标签: java algorithm
我正在尝试找出一种算法,该算法返回array中出现次数较多的数字,该数字包含0到9之间的数字,复杂度为n。 我虽然使用了HashMap,但需要n^2 如果有人可以编写代码,我更喜欢Java,但伪代码是相同的
array
n
HashMap
n^2
答案 0 :(得分:4)
使用十个计数器(每个数字一个),扫描数组并递增与数字对应的计数器。 (您实际上是在计算数字频率的直方图。)
使用最大的计数器报告数字。