import heapq # 创建一个空的优先堆 priority_queue = [] # 插入元素到优先堆中 heapq. heappush (priority_queue, ( 2 , 'task 2' )) heapq. heappush (priority_queue, ( 1 , 'task 1' )) heapq. heappush (priority_queue, ( 3 , 'task 3' )) # 查看优先堆中的元素 print ( " 优先堆中的元素: " , priority_queue) # 删除并返回具有最高优先级的元素(即最小的元素) highest_priority_task = heapq. heappop (priority_queue) print ( " 具有最高优先级的任务: " , highest_priority_task) # 查看删除后优先堆中的元素 print ( " 删除后的优先堆中的元素: " , priority_queue) heapq.heappush(heap, item) :将 item 插入堆中。 heapq.heappop(heap) :从堆中删除并返回最小的元素。 heapq.heapify(x) :将列表 x 转换为堆。 heapq.heappushpop(heap, item) :将 item 插入堆中,然后弹出并返回最小的元素。 heapq.heapreplace(heap, item) :弹出并返回最小的元素,然后将 item 插入堆中。
评论
发表评论