永发信息网

请教怎么找出数组中出现次数最多的元素

答案:2  悬赏:0  手机版
解决时间 2021-04-07 15:05
  • 提问者网友:流星是天使的眼泪
  • 2021-04-07 09:31
请教怎么找出数组中出现次数最多的元素
最佳答案
  • 五星知识达人网友:山河有幸埋战骨
  • 2021-04-07 10:17
如果数字限定范围,范围小的话,建议用两个数组来用,这样速度非常快。 如:int[]a={1,1,2,3,3,4,4}
第二个数组就有5个长度 int[]b=new int[5];
for(int i=0;i b[a[i]]++;
}
这样你在算出b数组中哪个最数最大,那么他的下标就是a数组中出现 最多次数的数了
全部回答
  • 1楼网友:山君与见山
  • 2021-04-07 11:51
方法1:数组循环,每次拿一个元素a和余下的数组元素比较,遇到重复元素,计数器加1,依次计算,可算出拿出元素a的出现次数接下来拿另外一个元素b和余下的数组元素比较,遇到重复元素,计数器加1,当计算完后,拿新计数器结果和原计数器结果比较如果计数器小,则不赋值,否则用新计数器替代旧计数器结果,其他的以此类推完成,可最终获得出现计数器最大的结果,就是你想要的方法2:使用字典结果来存储,循环数组,每次往字典里面添加key,遇到重复的key就修改key对应的字典值(key出现的次数)最终页可以获得结果方法3:使用lambda表达式,毕竟你使用的数组结构,肯定可以用到的,具体我没去想了
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯