Skip to content

Commit 65f2241

Browse files
committed
feat: find-minimum-in-rotated-sorted-array 풀이 추가
1 parent 8e26447 commit 65f2241

File tree

1 file changed

+38
-0
lines changed
  • find-minimum-in-rotated-sorted-array

1 file changed

+38
-0
lines changed
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
class Solution:
2+
def findMin(self, nums: List[int]) -> int:
3+
left, right = 0, len(nums) - 1
4+
5+
while left < right:
6+
mid = (left + right) // 2
7+
8+
if nums[mid] > nums[right]:
9+
left = mid + 1
10+
else:
11+
right = mid
12+
13+
return nums[left]
14+
15+
"""
16+
================================================================================
17+
풀이 과정
18+
================================================================================
19+
20+
[1차 시도] 이진 탐색 적용 - 기본 구조
21+
────────────────────────────────────────────────────────────────────────────────
22+
1. log(n) 시간 복잡도를 만족시키는 이진 탐색 구조로 최소값을 찾으면 될 것 같음
23+
24+
left, right = 0, len(nums) - 1
25+
26+
while left < right:
27+
mid = (left + right) // 2
28+
29+
if nums[mid] > nums[right]:
30+
left = mid + 1
31+
else:
32+
right = mid
33+
34+
return nums[left]
35+
36+
2. 시간복잡도: O(log n) - 이진 탐색
37+
3. 공간복잡도: O(1) - 추가 공간 사용 안 함
38+
"""

0 commit comments

Comments
 (0)