当右侧比左侧高时
left可以更新到mid右侧
当右侧比左侧低时
right只能更新到mid位置,不然会错过最高点
接下来套上一个的模板即可
cpp
class Solution {
public:
int peakIndexInMountainArray(vector<int>& arr) {
int left=0,right=arr.size()-1;
while(left<right)
{
int mid=left+(right-left)/2;
if(arr[mid]<=arr[mid+1])
left=mid+1;
else
right=mid;
}
return left;
}
};
