题解 | 寻找峰值
#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
#
# @param nums int整型一维数组
# @return int整型
#
class Solution:
def findPeakElement(self , nums: List[int]) -> int:
# write code here
L, R = 0, len(nums) - 1
while L < R:
m = (L + R) //2
if nums[m] < nums[m + 1]:
L = m + 1
else:
R = m
return L
一开始也懵逼,后来发现可以判断,看看下面的用例就懂了
12345 , 那么输出的是最后一个元素,第一次二分变为345,第一次二分是3
12435 , 那么输出的4,第一次二分划分变成124
15435 , 那么输出的5,第一次二分划分变成154
