1、python中如何調用小頂堆?
知道小頂堆的實現原理,自己寫一個也不復雜,工作中方便起見,更多的是直接調用堆。python可以使用heapq來實現。heapq默認是小頂堆。
heapq常用的方法
| 函 數 | 描 述 |
|---|---|
| heappush(heap, x) | 將x壓入堆中 |
| heappop(heap) | 從堆中彈出最小的元素(棧頂元素) |
| heapify([1,2,3]) | 讓列表具備堆特征 |
| heapreplace(heap, x) | 彈出最小的元素(棧頂元素),並將x壓入堆中 |
| nlargest(n, iter) | 返回iter中n個最大的元素 |
| nsmallest(n, iter) | 返回iter中n個最小的元素 |
在python中調用小頂堆的步驟


2、python中如何調用大頂堆?
python沒有可以直接使用的大頂堆。但是我們可以給列表中的元素加上負號,是的變成小頂堆,再在取數的時候再將其添加負號,就將小頂堆變成了大頂堆。
