主元素 II

给定一个整型数组,找到主元素,它在数组中的出现次数严格大于数组元素个数的三分之一。


 注意事项

数组中只有唯一的主元素

样例

给出数组[1,2,1,2,1,3,3] 返回 1

class Solution {
public:
    /*
     * @param nums: a list of integers
     * @return: The majority number that occurs more than 1/3
     */
    int majorityNumber(vector &nums) {
        // write your code here
        sort(nums.begin(),nums.end());
        int sum=1;
        for(int i=0;i             if(nums[i]==nums[i+1]){
                sum++;
            }else{
                if(sum>nums.size()/3){
                    return nums[i];
                }else{
                    sum=1;
                }
            }
        }
    }
};

你可能感兴趣的:(主元素 II)