diff --git a/find-minimum-in-rotated-sorted-array/DaleSeo.rs b/find-minimum-in-rotated-sorted-array/DaleSeo.rs new file mode 100644 index 0000000000..f487aab29e --- /dev/null +++ b/find-minimum-in-rotated-sorted-array/DaleSeo.rs @@ -0,0 +1,16 @@ +// TC: O(log n) +// SC: O(1) +impl Solution { + pub fn find_min(nums: Vec) -> i32 { + let (mut lo, mut hi) = (0, nums.len() - 1); + while lo < hi { + let mid = (lo + hi) / 2; + if nums[mid] > nums[hi] { + lo = mid + 1; + } else { + hi = mid; + } + } + nums[lo] + } +}