편집을 취소할 수 있습니다. 이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 게시해주세요.
최신판 | 당신의 편집 | ||
203번째 줄: | 203번째 줄: | ||
k = left | k = left | ||
while i<n1 and j<n2: | while i<n1 and j<n2: | ||
if L[i]<=R[j]: a[k]=L[i]; i+=1; k+=1 | if L[i]<=R[j]: | ||
else: a[k]=R[j]; j+=1; k+=1 | a[k]=L[i]; i+=1; k+=1 | ||
else: | |||
a[k]=R[j]; j+=1; k+=1 | |||
while i<n1: a[k]=L[i]; i+=1; k+=1 | while i<n1: a[k]=L[i]; i+=1; k+=1 | ||
while j<n2: a[k]=R[j]; j+=1; k+=1 | while j<n2: a[k]=R[j]; j+=1; k+=1 | ||
if right==-1: right=len(a)-1 | if right == -1: right = len(a)-1 | ||
if left>=right: return | if left >= right: return | ||
middle = (left+right-1) | middle = int((left+(right-1))/2) | ||
merge_sort(a, left, middle) | merge_sort(a, left, middle) | ||
merge_sort(a, middle+1, right) | merge_sort(a, middle+1, right) |