20 Majority Element 出现次数最多的元素

70 阅读1分钟

169. Majority Element

解题思路

  1. 利用字典统计出现的次数
  2. 统计完成后如果比假设值出现的次数大,替换 most,同时替换 result
  3. 遍历完成后直接返回 result 即可

代码

/**
 * @param {number[]} nums
 * @return {number}
 */
var majorityElement = function (nums) {
    const obj = {}
    let most = -1
    let result = ''
    for (let i = 0; i < nums.length; i++) {
        const key = nums[i]
        const val = obj[key]
        if (val) {
            obj[key]++
        } else {
            obj[key] = 1
        }
        if (obj[key] > most) {
            most = obj[key]
            result = key
        }
    }


    return result
};