Files
python3-cookbook/cookbook/c01/p05_priority_queue.py
2014-09-01 18:02:35 +08:00

22 lines
393 B
Python

#!/usr/bin/env python
# -*- encoding: utf-8 -*-
"""
Topic: 优先级队列
Desc :
"""
import heapq
class PriorityQueue:
def __init__(self):
self._queue = []
self._index = 0
def push(self, item, priority):
heapq.heappush(self._queue, (-priority, self._index, item))
self._index += 1
def pop(self):
return heapq.heappop(self._queue)[-1]