HashMap 看起来像:
Keys: 1, 2, 4
Values: 1, 2, 1
这里的模式是 2,因为它的值是一组值中最高的。
然而,如果
Keys: 1, 2, 4
Values: 1, 2, 2
然后就没有模式了。我得到了我拥有的较小测试用例的预期输出,但不确定这里是否存在不适用于较大输出的逻辑错误/如果值非常大并且不适合整数。
“计数”是 HashMap。
我的代码:
for (HashMap.Entry<Integer, Integer> entry : count.entrySet()) {
int curr = entry.getValue();
if (curr > mode) {
mode = curr;
}
else if (curr == mode) {
mode = -1;
}
}
if (mode != -1) {
for (HashMap.Entry<Integer, Integer> entry : count.entrySet()) {
if (entry.getValue() == mode) {
mode = entry.getKey();
}
}
}
森林海
繁星coding
相关分类