统计cnt,等于零则更换当前元素
但是注意:最后得到的索引要再遍历一边数组统计是否超过一半
1 int solution(vector<int> &A) { 2 // write your code in C++11 3 int cnt = 0; 4 int cur = -1; 5 for(int i = 0 ; i < A.size() ; ++i) 6 { 7 if(cnt == 0) 8 { 9 cur = i; 10 cnt++; 11 } 12 else 13 { 14 if(A[cur] == A[i]) 15 { 16 cnt++; 17 } 18 else 19 { 20 cnt--; 21 } 22 } 23 } 24 return cur; 25 }