题解 | #牛的体重统计#
牛的体重统计
https://www.nowcoder.com/practice/15276ab238c9418d852054673379e7bf
所用知识
哈希
所用语言
Java
解题思路
1、遍历两个数组,以数组中值为键,以其出现的次数为值 2、遍历值的集合,找出最大值 3、遍历键集合,找出值最大的键
完整代码
public int findMode (int[] weightsA, int[] weightsB) {
Map map = new HashMap<Integer, Integer>();
for (int x : weightsA) {
map.put(x, (Integer)map.getOrDefault(x, 0) + 1);
}
for (int x : weightsB) {
map.put(x, (Integer)map.getOrDefault(x, 0) + 1);
}
// 初始化最大值为 Integer.MIN_VALUE
int maxValue = 0;
Collection<Integer> values = map.values();
// 遍历 HashMap 中的所有值,更新最大值
for (int value : values) {
if (value >= maxValue) {
maxValue = value;
}
}
Set<Integer> keys = map.keySet();
int tem=0;
for ( int key : keys ) {
if((Integer)map.get(key)==maxValue){
if(key>tem){
tem=key;
}
}
}
return tem;
}
#牛的体重统计#