Python 排序算法之堆排序,使用 heapq 实现

使用内置的 heapq 实现堆排序

"""
堆排序 - 完全二叉树 - 最大堆,最小堆
借助内置的 heapq 模块
"""

def heapsort_use_heap(iterable):
    from heapq import heappush, heappop
    items = []
    for value in iterable:
        heappush(items, value)
    return [heappop(items) for i in range(len(items))]

def test_heapsort():
    import random
    arr = list(range(10))

    random.shuffle(arr)
    print(arr)
    res = heapsort_use_heap(arr)
    print(res)

test_heapsort()

作者:皎然CEO

链接:https://www.cnblogs.com/jiaoran/p/14584275.html

个性签名:独学而无友,则孤陋而寡闻。做一个灵魂有趣的人!

如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个”推荐”哦(っ•̀ω•́)っ✎⁾⁾!

Original: https://www.cnblogs.com/jiaoran/p/14584275.html
Author: 皎然CEO
Title: Python 排序算法之堆排序,使用 heapq 实现

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/603498/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球