题解 | #寻找峰值# -- 【Python3】
寻找峰值
http://www.nowcoder.com/practice/1af528f68adc4c20bf5d1456eddb080a
思路
- 处理边界值
- 倒序遍历,遇到第一个满足就返回其索引
class Solution: def solve(self , a ): n = len(a) maxIn = 0 # 处理边界值 if n == 1: return 0 if n == 2: if a[1] >= a[0]: return 1 elif a[0] > a[1]: return 0 if a[n-1] > a[n-2]: return n -1 # 倒着遍历,遇到一个满足条件的就返回 while n: n = n - 1 if a[n-1] >= a[n-2] and a[n-1] >= a[n]: return n - 1