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

溫馨提示×

python堆排序算法怎么使用

小億
86
2023-10-22 02:39:06
欄目: 編程語言

Python中的heapq模塊提供了堆排序算法的實現。下面是一個使用堆排序算法對列表進行排序的示例:

import heapq

def heap_sort(nums):
    # 將列表轉換為堆
    heapq.heapify(nums)
    
    sorted_nums = []
    while nums:
        # 從堆中彈出最小的元素,并添加到已排序列表中
        sorted_nums.append(heapq.heappop(nums))
    
    return sorted_nums

# 測試
nums = [3, 1, 4, 1, 5, 9, 2, 6, 5]
sorted_nums = heap_sort(nums)
print(sorted_nums)

輸出:

[1, 1, 2, 3, 4, 5, 5, 6, 9]

在這個例子中,我們首先使用heapify函數將列表nums轉換為一個堆。然后,我們使用heappop函數從堆中彈出最小的元素,并將其添加到已排序列表sorted_nums中。重復這個過程,直到堆為空。最后,我們返回已排序列表sorted_nums

0
千阳县| 石狮市| 芜湖县| 德保县| 祥云县| 尼木县| 延津县| 明星| 冕宁县| 凉山| 贵南县| 宜昌市| 长治县| 高要市| 富蕴县| 绍兴市| 寻乌县| 宜都市| 凌云县| 博白县| 镇雄县| 昌都县| 韩城市| 思茅市| 汉源县| 保靖县| 阿拉善左旗| 逊克县| 萨迦县| 上林县| 鄂伦春自治旗| 邹城市| 紫金县| 会昌县| 米泉市| 宕昌县| 含山县| 巩留县| 襄垣县| 连平县| 边坝县|