LeetCode 2951. Find the Peaks
周賽374。放水題,好康的還在後頭。
題目
輸入陣列mountain。你的目標是找到mountain中的所有山峰。
以任意順序回傳所有山峰索引。
注意:
- 山峰指的是某個元素嚴格大於其左右元素
- 第一個元素和最後一個元素不是山峰
解法
按照題意模擬。
時間複雜度O(N)。
空間複雜度O(1)。
class Solution:
def findPeaks(self, mountain: List[int]) -> List[int]:
N=len(mountain)
ans=[]
for i in range(1,N-1):
if mountain[i-1]<mountain[i] and mountain[i]>mountain[i+1]:
ans.append(i)
return ans