- Given an integer array sorted in non-decreasing order, there is exactly one integer in the array that occurs more than 25% of the time.
- Return that integer.
- Example 1:
- Input: arr = [1,2,2,6,6,6,6,7,10]
- Output: 6
- Constraints:
- 1 <= arr.length <= 10^4
- 0 <= arr[i] <= 10^5
- class Solution {
- public int findSpecialInteger(int[] arr) {
- int cur = 0, max = 0, res = 0;
- if(arr.length == 1) return arr[0];
- if(arr == null || arr.length == 0) return 0;
- for(int i = 0; i <arr.length - 1; i++){
- if(arr[i] == arr[i+1]){
- cur++;
- }
- else cur = 0;
- if(cur> max){
- max = cur;
- res = arr[i];
- }
- }
- System.out.println(max);
- return res;
- }
- }
HashMap 也行, 就是有点慢
来源: http://www.bubuko.com/infodetail-3343962.html