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.
[code]
public class Solution {
public int majorityElement(int[] num) {
int count=0, major=0;
if(num==null || num.length==0)return 0;
if(num.length==1)return num[0];
count=1;
major=num[0];
for(int i=1;i<num.length;i++)
{
if(count==0)
{
major=num[i];
count++;
}
else if(major==num[i])
{
count++;
}
else count--;
}
return count==0 ? 0 : major;
}
}