寻找峰值
使用二分查找算法的变种
class Solution {
public:
int findPeakElement(vector<int>& nums) {
//使用什么方法呢??
//第一想到的是什么:
//9,6,4,3,2,1,8,4
int len = nums.size();
if (len == 1 || len == 0)
return 0;
int low = 0;
int high = len - 1;
int mid;
while (low < high)//必须保证有两个元素的所以需要不需要==
{
mid = (low + high) / 2;
if (nums[mid] > nums[mid + 1])
high = mid;
else
low = mid + 1;
}
return low;
}
};