public class Solution {
    public int MoreThanHalfNum_Solution(int [] array) {
        //初始化
        int num = array[0] ;//候选人
        int tik = 1 ;//票数
        for(int i = 1 ; i < array.length ;) {
            if(array[i] == num) {//投票
                tik ++ ;
                i ++ ;
            } else {
                tik -- ;//减票
                if(tik == 0) {//票为0
                    if(i+1 < array.length) {//还有候选人
                        num = array[i+1] ;//换候选人
                        tik = 1 ;//初始票
                        i+=2 ;//下一个投票起始处
                    } else {
                        return -1 ;//无候选人了,返回-1
                    }
                } else {//票不为0,继续投票
                    i++ ;
                }
            }
        }
        return num ;
    }
}