我是靠谱客的博主 坚强乐曲,这篇文章主要介绍剑指Offer——数组中出现次数超过一半的数字(JS实现),现在分享给大家,希望可以做个参考。

题目描述

解题思路

  • 使用哈希Map的键存放数组的元素
  • 使用哈希Map的值存放该元素出现的次数
  • 找出出现次数大于长度一半的元素,返回即可

实现代码

var majorityElement = function(nums) {
    // 存储数组的长度的一半
    let len = nums.length/2;
    const m = new Map();
    for (let v of nums) {
        if (m.has(v)) {
            m.set(v,m.get(v)+1);
        } else {
            m.set(v,1);
        }
    };
    for (let v of m) {
        if (v[1] > len) {
            return v[0];
        }
    }
};

最后

以上就是坚强乐曲最近收集整理的关于剑指Offer——数组中出现次数超过一半的数字(JS实现)的全部内容,更多相关剑指Offer——数组中出现次数超过一半内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(54)

评论列表共有 0 条评论

立即
投稿
返回
顶部