admin管理员组

文章数量:1794759

二分查找一>寻找旋转排序数组中的最小值

1.题目: 

2.解析:

代码:

代码语言:javascript代码运行次数:0运行复制
方法一:以最后一个元素为参照物
        int left = 0, right = nums.length-1;
        int n = nums.length-1;

        while(left < right) {
            int mid = left+(right-left)/2;
            if(nums[mid] > nums[n]) left = mid+1;
            else right = mid;
        }

        return nums[left];

        
        //方法二:以第一个元素为参照物
        int left = 0, right = nums.length-1;
        int min = 0;
        while(left < right) {
            int mid = left+(right-left)/2;
            if(nums[mid] < nums[0]) right = mid;
            else left = mid+1;
        }
        min = nums[left];

        return min > nums[0] ? nums[0] : min;
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2024-10-08,如有侵权请联系 cloudcommunity@tencent 删除intminreturn排序数组

本文标签: 二分查找一>寻找旋转排序数组中的最小值