852. 山脉数组的峰顶索引

1
2
3
4
5
6
7
8
9
10
11
12
13
class Solution:
def peakIndexInMountainArray(self, arr: List[int]) -> int:
left = 0
right = len(arr) - 1
while left<=right:
half = left + (right-left)//2
print(half)
if arr[half]>arr[half-1] and arr[half]>arr[half+1]:
return half
elif arr[half]<arr[half+1]: # 上升趋势
left = half + 1
elif arr[half]<arr[half-1] : # 下降趋势
right = half - 1