利用hashmap特性统计数字出现次数

数组中出现次数超过一半的数字

http://www.nowcoder.com/questionTerminal/e8a1b01a2df14cb2b228b30ee6a92163

private static int MoreThanHalfNum_Solution(int[] array) {
HashMap<Integer,Integer> map=new HashMap<Integer, Integer>();
for(int i=0;i<array.length;i++){
if (map.containsKey(array[i])){
map.put(array[i],map.get(array[i])+1);//如果存在改数字,统计值+1
}else {
map.put(array[i],1);//如果不存在,将其插入map中
}
}
for(int k:map.keySet()){
if (map.get(k)>array.length/2){
return k;
}
}
return 0;
}

全部评论

相关推荐

03-03 23:12
已编辑
北京邮电大学 Java
书海为家:我来给一点点小建议,因为毕竟还在学校不像工作几年的老鸟有丰富的项目经验,面试官在面试在校生的时候更关注咱们同学的做事逻辑和思路,所以最好在简历中描述下自己做过项目的完整过程,比如需求怎么来的,你对需求的解读,你想到的解决办法,遇到困难如何找人求助,最终项目做成了什么程度,你从中收获了哪些技能,你有什么感悟。
你的简历改到第几版了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务