版权声明:所有代码均为自己总结,若有雷同请勿模仿 https://blog.csdn.net/weixin_44253023/article/details/89791712
def marge(li,low,mid,high):
i=low
j=mid+1
tmp=[]
while i <=mid and j<=high:
if li[i]<li[j]:
tmp.append(li[i])
i+=1
else:
tmp.append(li[j])
j+=1
while i<=mid:
tmp.append(li[i])
i+=1
while j<=high:
tmp.append(li[j])
j+=1
li[low:high+1]=tmp
def margesort(li,low,high):
if low<high:
mid=(low+high)//2
margesort(li,low,mid)
margesort(li,mid+1,high)
marge(li,low,mid,high)
li=[0,3,4,1,2,5,6,7,9]
margesort(li,0,len(li)-1)
print(li)