153. Find Minimum in Rotated Sorted Array - Medium

前往題目

想法

  • binary search找到第一組大變小的就是最小的數字了

思路

  1. binary search
  2. 如果中間比右指針小那代表是在正常的順序上,所以往左找
  3. 不然就是往右找了

這題我一開始嘗試用recursion來寫binary search失敗了😂

Code

class Solution {
    public int findMin(int[] nums) {
        int l = 0, r = nums.length - 1;

        while (l < r) {
            int mid = l + (r - l) / 2;

            if (nums[mid] < nums[r]) {
                r = mid;
            } else {
                l = mid + 1;
            }
        }
        return nums[l];
    }
}

153. Find Minimum in Rotated Sorted Array - Medium
https://f88083.github.io/2024/01/24/153-Find-Minimum-in-Rotated-Sorted-Array-Medium/
作者
Simon Lai
發布於
2024年1月24日
許可協議