给你一个非递减的 有序 整数数组,已知这个数组中恰好有一个整数,它的出现次数超过数组元素总数的 25%。
请你找到并返回这个整数
示例:
输入:arr = [1,2,2,6,6,6,6,7,10] 输出:6
class Solution {
public int findSpecialInteger(int[] arr) {
int num=1;
if(arr.length==1||arr.length==2){
return arr[0];
}
if(arr.length==3){
Arrays.sort(arr);
return arr[1];
}
int len=arr.length/4+1;
num=1;
for (int i = 0; i <arr.length-1 ; i++) {
if(arr[i]==arr[i+1]) num++;
else num=1;
if(num==len) return arr[i];
}
return 0;
}
}