class Solution:
def sortArray(self, nums: List[int]) -> List[int]:
def sort(l, r):
if l >= r: return
mid = (l+r)//2
sort(l, mid)
sort(mid + 1, r)
i = l
j = mid + 1
tmp = []
while i <= mid and j <= r:
if nums[i] < nums[j]:
tmp.append(nums[i])
i += 1
else:
tmp.append(nums[j])
j += 1
while i <= mid:
tmp.append(nums[i])
i += 1
while j <= r:
tmp.append(nums[j])
j += 1
i = 0
for k in range(l, r+1):
nums[k] = tmp[i]
i += 1
n = len(nums)
sort(0, n-1)
return nums