欢迎光临散文网 会员登陆 & 注册

一周刷爆LeetCode,算法大神左神(左程云)耗时100天打造算法与数据结构基

2023-02-15 16:25 作者:张鱼小丸子zcs  | 我要投稿
public class 局部最小值 {
    /*
    * 二分  先比较两端是否存在局部最小如果没有 则二分 判断mid的左右两个数是否大于mid
    * */
    public static void main(String[] args) {
        int[] arr={10,4,12,5,11,8,4,9};
//        两端存在则直接输出
        if(arr[0]<arr[1]) System.out.println(arr[0]);
        if(arr[arr.length-1]< arr[arr.length-2]) System.out.println(arr[arr.length-1]);
//        二分
        int left=1;
        int right=arr.length-2;
        int mid;
        while(left<=right){
            mid=left+((right-left)/2);
            if(arr[mid]>arr[mid-1]){
                right=mid-1;
            }else if(arr[mid]>arr[mid+1]){
                left=mid+1;
            }else{
                System.out.println(arr[mid]);
                break;
            }
        }
    }
}


一周刷爆LeetCode,算法大神左神(左程云)耗时100天打造算法与数据结构基的评论 (共 条)

分享到微博请遵守国家法律