From : https://leetcode.com/problems/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) {
int flag = 1, cur = nums[0];
for(int i=1; i<nums.size(); i++) {
if(flag == 0) cur = nums[i];
if(cur == nums[i]) flag++;
else flag--;
}
return cur;
}
};