擅长:python、mysql、java
<p>PQ with list和<code>bisect</code>,字符串作为存储对象。不需要更改存储对象。只需构造<code>item = (cost, object)</code>并将其插入PQ。在</p>
<pre><code>import bisect
# PQ of items
PQ = [
(10, 'aaa'),
(30, 'cccc'),
(40, 'dddd'),
]
def pq_insert(pq, item):
keys = [e[0] for e in pq]
i = bisect.bisect(keys, item[0])
pq.insert(i, item)
e = (20, 'bbbb')
pq_insert(PQ, e)
</code></pre>
<p>一些REPL输出</p>
^{pr2}$