python-算法-归并排序

版权声明:所有代码均为自己总结,若有雷同请勿模仿 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)

猜你喜欢

转载自blog.csdn.net/weixin_44253023/article/details/89791712
今日推荐