class Solution:
def merge(self, a, b):
n, m, i, j = len(a), len(b), 0, 0
a, b, c = a + [50001], b + [50001], []
while len(c) < n+m:
if a[i] <= b[j]:
c.append(a[i])
i += 1
else:
c.append(b[j])
j += 1
return c
def sortArray(self, nums: List[int]) -> List[int]:
n = len(nums) // 2
if n == 0:
return nums
return self.merge(self.sortArray(nums[:n]), self.sortArray(nums[n:]))
생각난 김에 머지소트를 구현해보았다.
빌트인보다 시간 세 배 걸리는거 실화? ㅜㅜ
Time Submitted | Status | Runtime | Memory | Language |
|---|---|---|---|---|
| 03/01/2023 09:08 | Accepted | 2078 ms | 23.1 MB | python3 |
| 03/01/2023 09:01 | Accepted | 690 ms | 22.2 MB | python3 |
아래가 빌트인 위가 내가 짠 소트..
댓글 0