Skip to content

Commit ef8cbee

Browse files
committed
优化153
1 parent 5060cfa commit ef8cbee

File tree

1 file changed

+5
-8
lines changed

1 file changed

+5
-8
lines changed

src/main/java/com/diguage/algo/leetcode/_0153_FindMinimumInRotatedSortedArray_4.java

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,16 +11,13 @@ public int findMin(int[] nums) {
1111
int left = 0, right = nums.length - 1;
1212
while (left < right) {
1313
int mid = left + (right - left) / 2;
14-
if (nums[0] <= nums[mid] && nums[mid] <= nums[right]) {
14+
// 只需要关注 nums[mid] 与最后一个数的大小关系即可
15+
// 如果 nums[mid] 更小,那么更小的数只能在前面,无论是否旋转。
16+
// 如果最后一个数更新,那么数组必定被旋转了,并且更小的数在后面。
17+
if (nums[mid] < nums[nums.length - 1]) {
1518
right = mid;
16-
} else if (nums[0] <= nums[mid]) {
17-
left = mid + 1;
1819
} else {
19-
if (nums[mid] < nums[nums.length - 1]) {
20-
right = mid;
21-
} else {
22-
left = mid + 1;
23-
}
20+
left = mid + 1;
2421
}
2522
}
2623
return nums[left];

0 commit comments

Comments
 (0)