python 代码疑惑
本帖最后由 李万金 于 2020-9-7 21:04 编辑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]
问题1:代码最后的[-1]是干什么的,我把-1改成2,没看出结果有什么变化
问题2:我上传的图中的q._queue的排序好像没什么规律,我看python关于heapq官方文档,应该从小到大排列吧?
纯萌新,还请指教 >>> a =
>>> a[-1]
3
>>> a = (1,2,3)
>>> a[-1]
3
它就是这个意思。但凡看到变量后面[] 无非就是索引取值
页:
[1]