导读
Python的强大并不在于它的语法,而在于它的库,当你对各种数据结构感到苦恼时,Python提供了各种开箱即用的数据结构。
Python提供了关于堆的操作,下面先简单介绍有关堆的概念。...Python提供的是基于小顶堆的操作,因此Python可以对list中的元素进行小顶堆排列,这样程序每次获取堆中元素时,总会取得堆中最小的元素。...Python并没有提供“堆”这种数据类型,它是直接把列表当成堆处理的。Python提供的heapq包中有一些函数,当程序用这些函数来操作列表时,该列表就会表现出“堆”的行为。...)
print('添加7.2之后my_data的元素:', my_data)
上面程序开始创建了一个list列表,接下来程序调用heapify()函数对列表执行堆操作,执行之后看到my_data的元素顺序如下...应用堆之后my_data的元素:[0, 0.5, 2, 3, 1, 5, 6, 7, 8, 9, 4]
这些元素看上去是杂乱无序的,但其实并不是,它完全满足小顶堆的特征。