2404. Most Frequent Even Element #
题目 #
- 给你一个整数数组
nums
,返回出现最频繁的偶数元素。 - 如果存在多个满足条件的元素,只需要返回 最小 的一个。如果不存在这样的元素,返回
-1
。 1 <= nums.length <= 2000
0 <= nums[i] <= 105
思路 #
模拟 #
代码 #
模拟 #
class Solution {
public int mostFrequentEven(int[] nums) {
int ans = Integer.MAX_VALUE;
Map<Integer, Integer> map = new HashMap<>();
for (int num: nums) {
if (num % 2 == 1) continue;
map.put(num, map.getOrDefault(num, 0) + 1);
if (map.get(num) > map.getOrDefault(ans, 0)) ans = num;
else if (map.get(num) == map.get(ans) && num < ans) ans = num;
}
return ans == Integer.MAX_VALUE ? -1 : ans;
}
}