def mergeSort(arry,left,right):
if left < right:
mid = (left + right) / 2
mergeSort(arry,left,mid)
mergeSort(arry,mid+1,right)
mergeArry(arry,left,right,mid)
return arry
def mergeArry(arry,left,right,mid):
i = left
j = mid + 1
temp = []
while i <= mid and j <= right:
if arry[i] <= arry[j]:
temp.append(arry[i])
i+=1
else:
temp.append(arry[j])
j+=1
while i <= mid:
temp.append(arry[i])
i+=1
while j <= right:
temp.append(arry[j])
j+=1
for i in range(left,right+1):
arry[i] = temp[i-left]
归并排序 MergeSort
最新推荐文章于 2023-03-15 20:26:05 发布