这个题跟上一个题很像,也是寻找一个峰值。此题还特意强调了如果有多个峰值则返回其中一个就可以。
那么可以直接按照上一个题目的做法来做:
class Solution {
public int findPeakElement(int[] nums) {
int left = 0;
int right = nums.length - 1;
while(left < right){
int mid = left + (right - left + 1) / 2;
if(nums[mid] < nums[mid - 1]){
right = mid - 1;
}else{
left = mid;
}
}
return left;
}
}