import numpy as np a=[8, 3, 2, 9, 5,7, 1, 5, 4] b=[456,13,48,131,84613,12,11,2,2,2] c=np.random.normal(0,200,1000) def Merge(a,low,middle,high): l,m,h=low,middle+1,0 b = [0] b = b * (high+1) while l<=middle and m<=high: if a[l]<=a[m]: b[h]=a[l] h+=1 l+=1 else: b[h]=a[m] h+=1 m+=1 while l<=middle: b[h]=a[l] h+=1 l+=1 while m<=high: b[h]=a[m] h+=1 m+=1 for i in range(h): a[low+i]=b[i] def MergeSort(a,law,high): if law<high: mid=int((law+high)/2) MergeSort(a,law,mid) MergeSort(a,mid+1,high) Merge(a,law,mid,high) MergeSort(c,0,len(c)-1) print(c)
合并排序-python实现
猜你喜欢
转载自blog.csdn.net/qq_36387683/article/details/79924516
今日推荐
周排行