写个算法,求数组字符数组中字符重复出现的次数比如{a,a,a,b,c,d,d,e,a}的输出就是a重复4次,d重复2次。
public static void statistic(char[] src){
HashMap<Character,Integer> map=new HashMap<Character,Integer>();
for(char c :src){
if(map.containsKey(c)){
int count=map.get(c);
map.put(c, ++count);
}else{
map.put(c, 1);
}
}
for(char c:map.keySet()){
if(map.containsKey(c)&&map.get(c)>1){
System.out.println("char "+c+"repeats for "+map.get(c)+"times");
}
}
}
这是我写的,有谁有没有更好的算法。。。
|