sorted array,经典二分查找,没有重复元素的都挺好做的
/**
* 自己的代码
* Runtime: 0 ms, faster than 100.00%
* Memory Usage: 38.3 MB, less than 63.87%
*/
class Solution {
public int findMin(int[] nums) {
int start = 0, end = nums.length - 1;
while (start < end) {
int mid = start + (end - start) / 2; // prevent overflow in (start + end)
if (nums[mid] < nums[end]) { // right part is sorted
end = mid;
} else { // left part is sorted
start = mid + 1;
}
}
return nums[start];
}
}
进阶版:
有重复元素的array
154. Find Minimum in Rotated Sorted Array II [Hard]
https://leetcode.com/problems/find-minimum-in-rotated-sorted-array-ii/