
包含不重复元素的集合称为“集set”。.NET Framework包含两个集HashSet
ISet
参考:C# Char.IsDigit()用法及代码示例 - 纯净天空 (vimsky.com)
是一种检查Unicode字符是否可以归类为十进制数,有两种:
Char.IsDigti(Char)——检查指定的字符是否为十进制数
Char.IsDigti(String, Int)——指定位置的指定字符串是否与十进制数匹配
去除前导零的意思就是,有时经过判断后输出的必须是有实际意义的数字,那么“01”“0001”与1意义相同。所以需要加上一步”判断是否为0且去除“的操作。
C# HashSet 用法_IT技术猿猴的博客-CSDN博客_c# hashset
点入链接,直接回顾一下C#中哈希添加和删除清空等修改操作。
参考:
包括有a到z之间的字母,还有一些特殊字符。例如这道题后面还想除了一种解法,但是很奇怪用时会超出。
老老实实用双指针,最后去除前导零就行。
- public class Solution {
- public int NumDifferentIntegers(string word) {
- HashSet<string> str = new HashSet<string>();
- int n = word.Length;
- int p1, p2=0;
- while(true) {
- while(p2
- p2++; //until:
- }
- if(p2==n) {
- break;
- }
- p1=p2;
- while(p2
- p2++;
- }
- while(p1+1
'0') { - p1++;
- }
- str.Add(word.Substring(p1, p2 - p1));
- }
- return str.Count;
- }
- }
另外在力扣网还看到了用正则巧妙地做的答案:[Java/C++] 简单模拟题 - 字符串中不同整数的数目 - 力扣(LeetCode)
- class Solution {
- public int numDifferentIntegers(String word) {
- Set
set = new HashSet<>(); - for (String str : word.split("[a-z]+")) if (str.length() > 0) set.add(str.replaceAll("^0+",""));
- return set.size();
- }
- }
-
相关阅读:
OOM和JVM最详细介绍
联通边缘AI:打造“职业技能”,助力行业高质量发展
Vue源码之数据响应式
Redis对象系统
12000条招聘数据告诉Python的学习方向和就业方向
Temu、Shopee、Lazada等跨境电商流量如何提升?买家号如何批量养号?
BeanDefinitionStoreException: Failed to read candidate component class
第三天:配置+运行代码+改个保存键
迷茫6连,这就是测试人毕业5年后的真实写照吗?
二十四节气-立冬文案、海报。万物收藏,冬之伊始。
-
原文地址:https://blog.csdn.net/qq_41835314/article/details/128201978