勤劳的小趴菜 2022-09-11 20:51 采纳率: 0%
浏览 12

python中的推排序

各位有志之士,我不太明白这个代码,请帮我看看下面这个求堆排序的问题:

def head_ajust(L,start,end):
    temp=L[start]
    i=start
    j=2*i
    while j<=end:
        if(j<end) and (L[j]<L[j+1]):
            j+=1
        if temp<L[j]:
            L[i]=L[j]
            i=j
            j=2*i
        else:
            break
    L[i]=temp
    import math
    def head_sort(L):
            L_length=len(L)-1
            first_sort_count=math.floor(L_length12)
            for i in range(first_sort_count):
                heap_adjust(L,first_sort_court-i,L_length)
            for i in range(L_length-1):
                L=swap_param(L,1,L_length-i-1)
                heap_adjust(L,1,L_length-i-1)
            return[L[i] for i in range(1,len(L))]

  • 写回答

1条回答 默认 最新

  • SoftwareTeacher 《编程之美》作者 2022-09-11 20:54
    关注

    你用测试数据运行代码后,发现错在什么地方呢?

    评论

报告相同问题?

问题事件

  • 创建了问题 9月11日