题解 | #数组中出现次数超过一半的数字#

数组中出现次数超过一半的数字

https://www.nowcoder.com/practice/e8a1b01a2df14cb2b228b30ee6a92163

#include <unordered_map>
class Solution {
public:
    int MoreThanHalfNum_Solution(vector<int>& numbers) {
        unordered_map<int,int>m;
        int n = numbers.size();
        int x = n/2;
        int sum = 0;
        for(int r = 0;r < n;r++)
        {
            m[numbers[r]]++;
            if( m[numbers[r]] > x)
            {
                sum += numbers[r];
                break;
            }
        }
        return sum;
    }
};

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务