File tree Expand file tree Collapse file tree 1 file changed +32
-0
lines changed
search-in-rotated-sorted-array Expand file tree Collapse file tree 1 file changed +32
-0
lines changed Original file line number Diff line number Diff line change
1
+ /**
2
+ * [Problem]: [33] Search in Rotated Sorted Array
3
+ * (https://leetcode.com/problems/search-in-rotated-sorted-array/description/)
4
+ */
5
+ function search ( nums : number [ ] , target : number ) : number {
6
+ //시간복잡도 O(log n)
7
+ //공간복잡도 O(1)
8
+ let left = 0 ;
9
+ let right = nums . length - 1 ;
10
+
11
+ while ( left <= right ) {
12
+ let mid = Math . floor ( ( left + right ) / 2 ) ;
13
+
14
+ if ( nums [ mid ] === target ) return mid ;
15
+
16
+ if ( nums [ left ] <= nums [ mid ] ) {
17
+ if ( nums [ left ] <= target && target < nums [ mid ] ) {
18
+ right = mid - 1 ;
19
+ } else {
20
+ left = mid + 1 ;
21
+ }
22
+ } else {
23
+ if ( nums [ mid ] < target && target <= nums [ right ] ) {
24
+ left = mid + 1 ;
25
+ } else {
26
+ right = mid - 1 ;
27
+ }
28
+ }
29
+ }
30
+
31
+ return - 1 ;
32
+ }
You can’t perform that action at this time.
0 commit comments