力扣5713. 字符串中不同整数的数目
给你一个字符串 word ,该字符串由数字和小写英文字母组成。
请你用空格替换每个不是数字的字符。例如,“a123bc34d8ef34” 将会变成 " 123 34 8 34" 。注意,剩下的这些整数间至少要用一个空格隔开:“123”、“34”、“8” 和 “34” 。
返回对 word 完成替换后形成的 不同 整数的数目。
如果两个整数的 不含前导零 的十进制表示不同,则认为这两个整数也不同。
示例 1:
输入:word = “a123bc34d8ef34”
输出:3
解释:不同的整数有 “123”、“34” 和 “8” 。注意,“34” 只计数一次。
示例 2:
输入:word = “leet1234code234”
输出:2
示例 3:
输入:word = “a1b01c001”
输出:1
解释:“1”、“01” 和 “001” 视为同一个整数的十进制表示,因为在比较十进制值时会忽略前导零的存在。
提示:
1 <= word.length <= 1000
word 由数字和小写英文字母组成
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/number-of-different-integers-in-a-string
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
题解:字符串转数组后,可以利用数字可拆分,在数组中只取为数字的字符,转为整形后再组成完整数字;因为不同整形只记一次,可以用Set容器的特性,很好完成整数的计数。
注:因为整数的计数不排除0,所以对于0的情况也应考虑;
对于最后几个或一个字符也整形,最后一定要做好判断;
class Solution {public int numDifferentIntegers(String word) {char[] str=word.toCharArray();Set<Integer> set=new TreeSet<Integer>();int j=-1;for(int i=0;i<str.length;i++){if(str[i]>='0'&&str[i]<='9'){int n=Integer.parseInt(str[i]+"");if(j==-1)j=0;j=n+j*10; }else{if(j!=-1) set.add(j); j=-1;}}if(j!=-1) set.add(j); return set.size();}
}
力扣5713. 字符串中不同整数的数目相关推荐
- 1805. 字符串中不同整数的数目
1805. 字符串中不同整数的数目 给你一个字符串 word ,该字符串由数字和小写英文字母组成. 请你用空格替换每个不是数字的字符.例如,"a123bc34d8ef34" 将会变 ...
- 力扣反转字符串中的元音字母
给你一个字符串 s ,仅反转字符串中的所有元音字母,并返回结果字符串. 元音字母包括 'a'.'e'.'i'.'o'.'u',且可能以大小写两种形式出现. 代码思路: 1.将字符串转换为字符数组 2. ...
- 力扣 387. 字符串中的第一个唯一字符 C语言实现
题目描述: 给定一个字符串 s ,找到 它的第一个不重复的字符,并返回它的索引 .如果不存在,则返回 -1 . 题目链接 方法一:哈希表 创建一个哈希表,遍历字符串中的字符,并在哈希表中查找该字符,如 ...
- LeetCode 1805. 字符串中不同整数的数目(哈希set)
文章目录 1. 题目 2. 解题 1. 题目 给你一个字符串 word ,该字符串由数字和小写英文字母组成. 请你用空格替换每个不是数字的字符. 例如,"a123bc34d8ef34&quo ...
- 力扣--让字符串成为回文串的最少插入次数
力扣–让字符串成为回文串的最少插入次数 文章目录 力扣--让字符串成为回文串的最少插入次数 一.题目描述 二.分析 三.代码 相关题目: 腾讯–构造回文:腾讯–构造回文 最长回文子串和回文链表:最长回 ...
- 力扣 旋转字符串 C语言 题解
力扣 旋转字符串 文章目录 力扣 旋转字符串 一.完整题目 二.解题思路 三.编写代码 四.测评结果 五.总结评价 一.完整题目 给定两个字符串, s 和 goal. 如果在若干次旋转操作之后,s 能 ...
- java利用正则表达式提取字符串中的整数和小数部分
最近开发遇到一个新的东西,就是前端传过来一个字符串,需要将里面的数字提取出来,倒腾了一天,最后还是没有倒腾出来,最后还是借鉴大佬的方法.记录一下. 首先是前端传来的字符串"小明通过扫码向你付 ...
- 刷爆力扣之字符串中的单词数
刷爆力扣之字符串中的单词数 HELLO,各位看官大大好,我是阿呆
- 力扣 根据数字二进制下1的数目排序
力扣 根据数字二进制下1的数目排序 题目描述 给你一个整数数组 arr .请你将数组中的元素按照其二进制表示中数字 1 的数目升序排序. 如果存在多个数字二进制中 1 的数目相同,则必须将它们按照数值 ...
- Java黑皮书课后题第7章:*7.22(计算一个字符串中大写字母的数目)编写程序,从命令行输入一个字符串,然后显示字符串中大写字母的数目
7.22(计算一个字符串中大写字母的数目)编写程序,从命令行输入一个字符串,然后显示字符串中大写字母的数目 题目 题目描述 破题 代码 运行实例 题目 题目描述 7.22(计算一个字符串中大写字母的数 ...
最新文章
- 9月22日我国垃圾邮件报告:湖北省再居榜首
- 【VMCloud云平台】SCVMM配置(九)创建Web服务模板
- 傅里叶级数FS, 离散傅里叶变换DFT
- mongoDB-3.x启用认证
- 我是大富豪php源码,最全大富豪3.4源码【自用可运营】含23款子游戏+可控制输赢工具...
- Appnium安装-Mac平台
- 开发者入门,这几款小工具能让你事半功倍
- python input 拖入路径 去除转义 空格_python学习笔记(基础-2)(转载)
- java数据类型_JAVA基础篇(数据类型)
- 《PHP和MySQL Web开发从新手到高手(第5版)》一一1.7 万事俱备,摩拳擦掌
- EditPlus中有用的快捷键
- android SDK 常见安装方法
- C++对象模型探索视频课程
- word里边页眉下面的下划线怎么去掉
- 配方奶粉,尽量不用鲜奶
- FreeMarker导出word遇到的坑
- 《windows游戏编程大师技巧》第五章:DirectX基础知识和令人生畏的COM
- word两个不同表格合并,防止自动调整
- 微信小程序云开发完整案例
- linux qemu-nbd介绍
热门文章
- TensorFlow ERROR:Resource temporarily unavailable
- 奖励 CSDN 社区的领军人物
- 花花公子发大招!一款可以“美容”的安全套,极致××体验从它出发 | 钛空舱
- EasyReport报表工具
- 中国有机菠萝汁行业市场供需与战略研究报告
- Linux查看Nvidia显卡型号
- ansys怎么删除线段_如何彻底删除ansys
- python开头编码cc手_python的编码问题整理
- 【找规律】求123456789的第几个全排列
- Golang defer、panic和recover