力扣 169. 多数元素

98 阅读1分钟

🔗 leetcode.cn/problems/ma…

题目

  • 给一个数组,返回其中多数元素
  • 多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。

思路

  • hash map 计数, 大于 n/2 时,返回该元素

代码

class Solution {
public:
    int majorityElement(vector<int>& nums) {
        int n = nums.size()/2;
        map<int, int> mp;
        for (auto num : nums) {
            mp[num]++;
            if (mp[num] > n) return num;
        }
        
        return 0;
    }
};