题目:
设计一个函数用来判断一个数组 是否有水王数,如果有请输出这个水王数。
思路:
采用hashMap实现的代码,key:记录不同的数字,value: 数字出现的次数。
代码块:
public static int getNumber(int[] data) {
Map<Integer, Integer> number2CountMap = new HashMap<>(data.length);
for (int d : data) {
number2CountMap.merge(d, 1, Integer::sum);
}
for (Map.Entry<Integer, Integer> entry : number2CountMap.entrySet()) {
if (entry.getValue() > data.length >> 1) {
return entry.getKey();
}
}
return -1;
}