欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

153. 寻找旋转排序数组中的最小值

最编程 2024-07-11 07:07:38
...
class Solution {
    public int findMin(int[] nums) {
        int result = nums[0];
        int l = 0, r = nums.length - 1;
        while (l <= r) {
            int m = (l + r) >> 1;
            if (nums[l] <= nums[m]) {
                // 从l到m有序
                if (nums[l] < result) {
                    result = nums[l];
                }
                l = m + 1;
            } else {
                // 从m到r有序
                if (nums[m] < result) {
                    result = nums[m];
                }
                r = m - 1;
            }
        }
        return result;
    }
}