标签:
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.
public class Solution {
    public int majorityElement(int[] num) {
        // assuming the num is not null and empty.
        
        int most = num[0];
        int counter = 1;
        
        for(int i=1; i<num.length; i++) {
            if(num[i] == most) {
                ++counter;
            } else {
                if(counter==0) {
                    most = num[i];
                    ++counter;
                } else {
                    --counter;
                }
            }
        }
        return most;
    }
}leetcode 153: Majority Element
标签:
原文地址:http://blog.csdn.net/xudli/article/details/42097849