[leetcode] Add to List 169. Majority Element

Given an array of size n, find the majority element. The majority element is the element that appears more than ⌊ n/2 ⌋ times.

You may assume that the array is non-empty and the majority element always exist in the array.


代码如下:

class Solution {
public:
    int majorityElement(vector<int>& nums) {
        ////size=1
        if(nums.size()==1)
            return nums[0];
            
        ////size>1
        sort(nums.begin(),nums.end());
        
        int number = 1;
        
        for(int i=1; i<nums.size(); i++)
        {
            if(nums[i]==nums[i-1])
            {
                number++;
                if(number>=(nums.size()+1)/2)
                    return nums[i];
            }
            else
                number = 1;
        }
        
        return 0;
    }
};


展开阅读全文

没有更多推荐了,返回首页