import java.util.*;
//import java.util.Arrays;
public class Solution {
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param numbers int整型一维数组
* @return int整型
*/
public int MoreThanHalfNum_Solution (int[] numbers) {
int result=numbers[0];//初始result
int times=1;//初始result的值
for(int i=1;i<numbers.length;i++){ //i从1下标开始遍历
if(times!=0){ //值不为0,则代表当前它还是众数
if(result!=numbers[i]){ //不相等则消去
--times;
}else{ //相等,则众数数量++
++times;
}
}else{ //times等于0的情况,变换众数为当前i下标元素
result=numbers[i];
times=1;
}
}
return result;//
}
}
题解:

京公网安备 11010502036488号