public class Solution {
    public int MoreThanHalfNum_Solution(int [] array) {
        if(array==null||array.length==0)return 0;
        int morgen=0;
        int vote=0;
        for(int i=0;i<array.length;i++){
            if(vote==0){
                morgen=array[i];
                vote++;
            }else{
                if(array[i]==morgen){
                    vote++;
                }else{
                    vote--;
                }
            }
        }
        int tmp=0;
        for(int i=0;i<array.length;i++){
            if(array[i]==morgen){
                tmp++;
            }
            if(tmp>array.length/2){
                return morgen;
            }
        }
        return 0;
    }
}
用摩尔投票法 可使时间复杂度为On 空间复杂度为O1.