首页 > 代码库 > LeetCode--Majority Element

LeetCode--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.

Credits:
Special thanks to @ts for adding this problem and creating all test cases.

class Solution 
{
public:
    int majorityElement(vector<int> &num) 
	{
		int flag = 0;
		int n=num.size();
		if(n==0)
			return -1;
		int res = num[0];
		for(int i=1; i<n; i++)
		{
			if(num[i]==res)
				flag++;
			else
			{
				if(flag>0)
					flag--;
				else
					res = num[i];
			}
		}
		return res;
    }
};


LeetCode--Majority Element