题解 | #寻找峰值#

寻找峰值

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

import java.util.*;


public class Solution {

    public int findPeakElement (int[] nums) {
        // 定义快慢指针,起始差为1,之后同步走来比较

        int ret =0;
        if(nums.length==2&&nums[1]>nums[0]){
            ret = 1;
        }
        int f = 2;
        int s = 0;
        
        //注意边界处以而满足
        if(nums.length>2&&nums[nums.length-1]>nums[nums.length-2]){
            ret = nums.length-1;
        }

        while(f<nums.length){
            if(nums[f-1]>nums[s]&&nums[f-1]>nums[f]){
                ret = f-1;
                break;
            }else{
                f++;
                s++;
            }
        }

        return ret;
    }
}

全部评论

相关推荐

2025-12-19 21:53
门头沟学院 Java
想做OpenGL:不要一来就把自己定位这么低吧,把大厂当成目标,不断去学技术做项目,最后你至少能学到能找到中小厂的技术水平,你一上来就找这种两千块还要前后端都会的,其实对你用处不会很大,真去了也是打杂
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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