黑马程序员技术交流社区
标题:
简单的算法题
[打印本页]
作者:
haixian
时间:
2014-4-3 19:41
标题:
简单的算法题
写个算法,求数组字符数组中字符重复出现的次数比如{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");
}
}
}
这是我写的,有谁有没有更好的算法。。。
作者:
林发明
时间:
2014-4-3 21:47
从集合中取出时是不是不用判断map.containsKey(c),因为你在上面存入的,取得时候必须有映射关系啊
另外,使用TreeMap集合可以在打印的时候有顺序
作者:
haixian
时间:
2014-4-3 21:51
林发明 发表于 2014-4-3 21:47
从集合中取出时是不是不用判断map.containsKey(c),因为你在上面存入的,取得时候必须有映射关系啊
另外, ...
这个我知道,我想知道有没有更好的算法。
作者:
黄泉
时间:
2014-4-3 22:54
看的有点晕晕的!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2