尋找峰值 leetcode

2021-10-07 18:13:00 字數 1086 閱讀 5111

&emps;峰值元素是指其值大於左右相鄰值的元素。

給定乙個輸入陣列nums,其中nums[i] ≠ nums[i+1],找到峰值元素並輸出其索引值,

你可以假設nums[-1] = nums[n] = -∞。

注意:不用擔心存在多個峰值,測試資料保證僅存在乙個峰值

input

輸入乙個整數n,表述陣列的長度,接下來依次輸入n個數字,表示陣列元素的值

output

輸出該陣列峰值對應的索引位置

sample input:

61 8 9 10 7 5

sample output:

3

length =

int(

input()

)message_list =

list

(map

(int

,input()

.strip(

).split(

' ')))

for i in

range(1

, length -1)

:if message_list[i]

> message_list[i-1]

and message_list[i]

> message_list[i+1]

:print

(i)break

# 二分

n =int

(input()

)num =

list

(map

(int

,input()

.split(

' ')))

l =0

r =len

(num)-1

while l < r:

m =(l + r +1)

//2if num[m]

> num[m -1]

: l = m

else

: r = m -

1print

(l)

LeetCode之尋找峰值

峰值元素是指其值大於左右相鄰值的元素。給定乙個輸入陣列 nums,其中 nums i nums i 1 找到峰值元素並返回其索引。陣列可能包含多個峰值,在這種情況下,返回任何乙個峰值所在位置即可。你可以假設 nums 1 nums n 示例 1 輸入 nums 1,2,3,1 輸出 2 解釋 3 是...

LeetCode 陣列 尋找峰值

峰值元素是指其值大於左右相鄰值的元素。給定乙個輸入陣列 nums,其中 nums i nums i 1 找到峰值元素並返回其索引。陣列可能包含多個峰值,在這種情況下,返回任何乙個峰值所在位置即可。你可以假設 nums 1 nums n 示例 輸入 nums 1,2,3,1 輸出 2 解釋 3 是峰值...

LeetCode 162 尋找峰值

題目描述 峰值元素是指其值大於左右相鄰值的元素。給定乙個輸入陣列nums,其中nums i nums i 1 找到峰值元素並返回其索引。陣列可能包含多個峰值,在這種情況下,返回任何乙個峰值所在位置即可。你可以假設nums 1 nums n 示例 輸入 nums 1,2,3,1 輸出 2 解釋 3 是...