leetcode刷题 162.寻找峰值
生活随笔
收集整理的這篇文章主要介紹了
leetcode刷题 162.寻找峰值
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目分析:
通過題目,我們發現這題的本質是尋找一段數組范圍內的最大值,我們可以通過不斷的縮小數組范圍來尋找目標值,由縮小數組范圍我們可以聯想到二分查找,但是此二分查找有一不同點,就是中值不是同左右界值進行比較,而是和中值相鄰的數值進行比較,究其原因是因為峰值的特點是大于相鄰值。
代碼:
class Solution { public:int findPeakElement(vector<int>& nums){int left=0,right=nums.size()-1,mid=0;while(left<right){mid=(left+right)/2;if(nums[mid]>nums[mid+1]){right=mid;}else{left=mid+1;}}return right;} };總結
以上是生活随笔為你收集整理的leetcode刷题 162.寻找峰值的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 太古神王的升级攻略是什么
- 下一篇: 名下不动产怎么查询 如何查询名下不动产