中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python中堆排序算法怎么實現

發布時間:2020-12-10 09:39:40 來源:億速云 閱讀:474 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關python中堆排序算法怎么實現的內容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。

代碼:

def heap_sort(array, n, length):
    l = 2*n + 1
    r = 2*n + 2
    if l <= length - 1:
        heap_sort(array, l, length)
    if r <= length - 1:
        heap_sort(array, r, length)

    if l >= length:
        return
    index = l
    if r < length and array[r] > array[l]:
        index = r

    if array[n] < array[index]:
        array[n], array[index] = array[index], array[n]

測試:

if __name__ == '__main__':
    a = input("輸入數組元素:").split(" ")
    a = list(map(int, a))
    b = a.copy()
    c = a.copy()

    for i in range(len(c)):
        heap_sort(c, 0, len(c) - i)
        c[0], c[len(c) - i - 1] = c[len(c) - i - 1], c[0]
    print(c)
   
    輸入數組元素:4 8 3 6 7 1 5
[1, 3, 4, 5, 6, 7, 8]
Process finished with exit code 0

感謝各位的閱讀!關于python中堆排序算法怎么實現就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

九江市| 广饶县| 瓮安县| 资讯| 改则县| 淮阳县| 太湖县| 云和县| 亳州市| 定日县| 宜君县| 灵璧县| 同江市| 宝丰县| 花莲市| 渝北区| 凉城县| 襄樊市| 鄂托克旗| 南溪县| 房产| 延安市| 夏邑县| 托里县| 维西| 堆龙德庆县| 固安县| 元氏县| 吉隆县| 宁津县| 高安市| 双城市| 新巴尔虎右旗| 濮阳市| 盘锦市| SHOW| 湟中县| 清新县| 定襄县| 墨竹工卡县| 云浮市|