@@ -4,7 +4,7 @@ https://leetcode-cn.com/problems/search-in-rotated-sorted-array/
44
55- [ 33. 搜索旋转排序数组] ( #33-搜索旋转排序数组 )
66 - [ 题目描述] ( #题目描述 )
7- - [ 方法1 : 二分法] ( #方法1 -二分法 )
7+ - [ 方法 1 : 二分法] ( #方法-1 -二分法 )
88 - [ 思路] ( #思路 )
99 - [ 复杂度分析] ( #复杂度分析 )
1010 - [ 代码] ( #代码 )
@@ -45,7 +45,7 @@ nums 肯定会在某个点上旋转
4545著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
4646```
4747
48- ## 方法1 : 二分法
48+ ## 方法 1 : 二分法
4949
5050### 思路
5151
@@ -56,12 +56,12 @@ nums 肯定会在某个点上旋转
5656
5757也就是说我们选定一个中点之后,数组总会被分为有序和无序两个部分,对于有序部分,我们很容易能判断是否需要继续搜索,如果有序部分不满足搜索条件,那我们就将搜索区间缩小为数组无序部分。
5858
59- ![ ] ( https://cdn.jsdelivr.net/gh/suukii/Articles /assets/33_0.png )
59+ ![ ] ( https://cdn.jsdelivr.net/gh/suukii/91-days-algorithm /assets/33_0.png )
6060
6161### 复杂度分析
6262
63- - 时间复杂度:$O(logn)$,n 为数组长度。
64- - 空间复杂度:$O(1)$。
63+ - 时间复杂度:$O(logn)$,n 为数组长度。
64+ - 空间复杂度:$O(1)$。
6565
6666### 代码
6767
@@ -73,27 +73,28 @@ JavaScript Code
7373 * @param {number} target
7474 * @return {number}
7575 */
76- var search = function (nums , target ) {
77- let l = 0 , r = nums .length - 1
78- while (l <= r) {
79- const m = l + ((r - l) >> 1 )
80- if (nums[m] === target) return m
81-
82- // m 位于左侧有序部分
83- if (nums[l] <= nums[m]) {
84- // m 大于 target,并且 target 大于左侧最小值,才缩小右边界
85- if (nums[m] > target && target >= nums[l]) r = m - 1
86- else l = m + 1 ;
87- }
88- // m 位于右侧有序部分
89- else {
90- // m 小于 target,并且 target 小于右侧最大值,才缩小左边界
91- if (nums[m] < target && target <= nums[r]) l = m + 1 ;
92- else r = m - 1 ;
93- }
76+ var search = function (nums , target ) {
77+ let l = 0 ,
78+ r = nums .length - 1 ;
79+ while (l <= r) {
80+ const m = l + ((r - l) >> 1 );
81+ if (nums[m] === target) return m;
82+
83+ // m 位于左侧有序部分
84+ if (nums[l] <= nums[m]) {
85+ // m 大于 target,并且 target 大于左侧最小值,才缩小右边界
86+ if (nums[m] > target && target >= nums[l]) r = m - 1 ;
87+ else l = m + 1 ;
9488 }
95- return - 1
89+ // m 位于右侧有序部分
90+ else {
91+ // m 小于 target,并且 target 小于右侧最大值,才缩小左边界
92+ if (nums[m] < target && target <= nums[r]) l = m + 1 ;
93+ else r = m - 1 ;
94+ }
95+ }
96+ return - 1 ;
9697};
9798```
9899
99- 更多题解可以访问:[ https://github.com/suukii/91-days-algorithm ] ( https://github.com/suukii/91-days-algorithm )
100+ 更多题解可以访问:[ https://github.com/suukii/91-days-algorithm ] ( https://github.com/suukii/91-days-algorithm )
0 commit comments