[leetcode]169. 求众数

1.题目:
给定一个大小为 n 的数组,找到其中的众数。众数是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素。
你可以假设数组是非空的,并且给定的数组总是存在众数。

2.代码:

int majorityElement(int* nums, int numsSize) {
    int m=0,n=0;
    for(int i=0;i<numsSize;i++){
        if(nums[i]==m)
            n++;
        else{
               if(n==0){
                   m=nums[i];
                   n++;
               }       
               else{
                   n--;
               }
        }            
    }
    return m;
}

3.知识点:

摩尔投票法求众数。

猜你喜欢

转载自blog.csdn.net/MJ_Lee/article/details/88182711