We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 5060cfa commit ef8cbeeCopy full SHA for ef8cbee
src/main/java/com/diguage/algo/leetcode/_0153_FindMinimumInRotatedSortedArray_4.java
@@ -11,16 +11,13 @@ public int findMin(int[] nums) {
11
int left = 0, right = nums.length - 1;
12
while (left < right) {
13
int mid = left + (right - left) / 2;
14
- if (nums[0] <= nums[mid] && nums[mid] <= nums[right]) {
+ // 只需要关注 nums[mid] 与最后一个数的大小关系即可
15
+ // 如果 nums[mid] 更小,那么更小的数只能在前面,无论是否旋转。
16
+ // 如果最后一个数更新,那么数组必定被旋转了,并且更小的数在后面。
17
+ if (nums[mid] < nums[nums.length - 1]) {
18
right = mid;
- } else if (nums[0] <= nums[mid]) {
- left = mid + 1;
19
} else {
- if (nums[mid] < nums[nums.length - 1]) {
20
- right = mid;
21
- } else {
22
23
- }
+ left = mid + 1;
24
}
25
26
return nums[left];
0 commit comments