1. 题目
2404. 出现最频繁的偶数元素
2. 思路
- 创建哈希表,统计偶数的出现次数
- 将哈希表转换成数组,遍历哈希表,设置res的初始值为[-1,0],第一个值为偶数值,第二个值为这个偶数出现的次数;如果出现次数一样,就选择小一点的偶数。
3. 代码实现
/**
* @param {number[]} nums
* @return {number}
*/
var mostFrequentEven = function(nums) {
const n = nums.length
let map = new Map()
for (let i = 0; i < n; i++) {
if (nums[i] % 2 === 0) {
map.set(nums[i], (map.get(nums[i]) || 0) + 1)
}
}
let res = [-1, 0]
let arr = [...map].sort((a, b) => b[1] - a[1])
for (let [key, val] of arr) {
if (res[1] <= val) {
res[0] = (res[1] === val) ? Math.min(res[0], key) : key
res[1] = val
}
}
return res[0]
};