1. 虽然不算最优解,但是满足题意,时间复杂度O(n),空间复杂度O(1)
  2. 先找到最大值-》确定数组的长度
  3. 统计值的个数
  4. 遍历取出最大值的索引
public class Solution {
    public int MoreThanHalfNum_Solution(int [] array) {
        
        int max = array[0];
        for(int a : array){
            if(a>max){
                max = a;
            }
        }
        int[] arr = new int[max+1];
        for(int s : array){
            arr[s] = arr[s] +1;
        }
        max = 0;
        int index = 0;
        for(int i=0;i<arr.length;i++){
            if( arr[i]> max){
                max = arr[i] ;
                index = i;
            }
        }
        return index;
    }
}