• 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

  • 相关阅读:
    微信jssdk
    php读取大文件
    PHP工程师突破
    TCP/IP
    基于scrapy-redis的分布式爬虫
    pymongodb的使用和一个腾讯招聘爬取的案例
    中间件使用之(UA,IP,selenium)的使用
    windos下redis服务的后台启动
    mongodb的初步使用
    windos下安装mongodb
  • 原文地址:https://www.cnblogs.com/mc-web/p/13179036.html
Copyright © 2020-2023  润新知