题解 | #寻找峰值#

寻找峰值

https://www.nowcoder.com/practice/fcf87540c4f347bcb4cf720b5b350c76

题目 一题多解

官方 又是 二分的应用

最难得部分 还是 那个left right更新的比较逻辑地方。就是 nums[mid]< nums[mid+1]选用位置

```c++

class Solution {

public:

    int findPeakElement(vector<int>& nums) {

        // write code here

        if(nums.size()==1)

        return 0;

        else{

            int l =0 , r = nums.size()-1;

            int mid =0;

            while(l<r){

                mid = l + ( (r-l)>>1);

                //if( vector[mid]) 

                //无序数据 到底和谁比较?

                if(nums[mid]< nums[mid+1]){

                    l = mid+1 ; //往右边走:left bigger

                }else{

                    r = mid; //right lower

                }

                

            }

            return l;

        }

    }

};

```

全部评论

相关推荐

在debug的柠檬精...:好消息:现在HR挑三拣四 15年后 HR跪着求要简历 坏消息:被挑的是这代人,到时候求人的也是这代人。真好。
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
昨天 12:11
我最近都有点不想活了,天天早10晚11的,还问我爱不爱她目前的状态别说爱谁了,没扇谁就不错了。是不是大家都是一进节子,只有工作没有爱情了
AzureSkies:在字节的时候找的就是字节的,飞书太适合恋爱人士了,能看到是不是已读,是不是在会议中。简直冥婚好伴侣
投递字节跳动等公司9个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务