import math
G=[25,12,35,20,2,8,5,13,26,24,20,13,16,14,56,54,26,34,67,85,13,10,14,22,31,10,5,6
,78,85,86,95,52,61,24,21,23,32,45]
N=len(G)
a=range(N)
b=list(a)
b.reverse()
sorted_list=[]
while True:
for i in b:
j=math.ceil(i/2)-1
if j<0:
break
else:
if G[j]<G[i]:
x=G[j]
G[j]=G[i]
G[i]=x
sorted_list.append(G[0])
y=G[0]
G[0]=G[-1]
G[-1]=y
G[-1]=-1
print(G)
if len(sorted_list)==N:
break
print(sorted_list)
Python堆排序算法
最新推荐文章于 2021-08-19 09:43:30 发布