169. Majority Element

Problem:app

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

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

 

A possible solution:element

class Solution {
public:
    int majorityElement(vector<int>& nums) {
        int majority;
        int cnt=0;
        for(int i=0;i<nums.size();i++)
        {
            if(cnt == 0)
            {
                majority = nums[i];
                cnt ++;
            }
            else
            {
                majority == nums[i]?cnt++:cnt--;
                if(cnt>nums.size()/2+1) return majority;
            }
        }
        return majority;
    }
};
相關文章
相關標籤/搜索