python的堆heap操作


python没有实现专门的堆数据结构,但是提供了一系列方法,可以操作在list上,实现堆的功能

import heapq
# 将x压入堆中
heapq.heappush(heap, x)   
# 从堆中弹出最小的元素                                     
heapq.heappop(heap)    
# 让列表具备堆特征                                  
heapq.heapify(heap) 
# 弹出最小的元素,并将x压入堆中                                      
heapq.heapreplace(heap, x)  
# 返回iter中n个最大的元素                          
heapq.nlargest(n, iter) 
# 返回iter中n个最小的元素                                      
heapq.nsmallest(n, iter)                                   

# 从一个list中获取最大的元素
max_column_data = heapq.nlargest(1, temp_list, key=lambda item: len(item))

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM