Codewars Solution:Counting Duplicates
Posted mc-web
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Codewars Solution:Counting Duplicates相关的知识,希望对你有一定的参考价值。
Level 6kyu :Counting Duplicates
描述:
计算重复次数编写一个函数,该函数将返回在输入字符串中多次出现的不区分大小写的字母字符和数字的计数。
可以假定输入字符串仅包含字母(大写和小写)和数字。
例如:
"abcde" -> 0 # no characters repeats more than once
"aabbcde" -> 2 # ‘a‘ and ‘b‘
"aabBcde" -> 2 # ‘a‘ occurs twice and ‘b‘ twice (`b` and `B`)
"indivisibility" -> 1 # ‘i‘ occurs six times
"Indivisibilities" -> 2 # ‘i‘ occurs seven times and ‘s‘ occurs twice
"aA11" -> 2 # ‘a‘ and ‘1‘
"ABBA" -> 2 # ‘A‘ and ‘B‘ each occur twice
1 public static int duplicateCount(String text) { 2 // Write your code here 3 text=text.toLowerCase();//要求大小写也算转为小写或者大写(toUpperCase()方法) 4 int len=text.length(); 5 int total=0;//返回(有两个及以上字符相同的)个数 6 char[] arr=new char[len];//装入已检查字符,后续出现的不再循环 7 int index=0; 8 for(int i=0;i<len;i++){ 9 boolean flag=true; 10 int count=1; 11 for(char c:arr){ 12 if(c==text.charAt(i)){ 13 flag=false; 14 } 15 } 16 if(flag){//true即上面数组里面不存在现在循环的当前字符 17 for(int j=i;j<len;j++){ 18 if(j==i)continue; 19 else{ 20 if(text.charAt(i)==text.charAt(j)){ 21 count++; 22 } 23 } 24 } 25 arr[index++]=text.charAt(i); 26 } 27 if(count!=1){//不等于1即有重复字符,总个数加1 28 total++; 29 } 30 } 31 return total; 32
总结:代码调试真是找错的好东西。:D
以上是关于Codewars Solution:Counting Duplicates的主要内容,如果未能解决你的问题,请参考以下文章
[codewars_python]Sum of Digits / Digital Root