题目
峰值元素是指其值大于左右相邻值的元素。
给你一个输入数组 nums,找到峰值元素并返回其索引。数组可能包含多个峰值,在这种情况下,返回 任何一个峰值 所在位置即可。
你可以假设 nums[-1] = nums[n] = -∞ 。
思路
第一种情况:数组升序 return a.size()-1
第二种情况:数组降序 return 0
第三种情况:峰值元素在数组中间 return i;
代码
class Solution {
public:
int findPeakElement(vector<int>& a) {
for(int i=0;i<a.size();i++){
if(a[i]>a[i+1]) return i; //情况2,3
}
return a.size()-1; //情况1
}
};