擅长:python、mysql、java
<p>出于复杂性的考虑,您可以尝试使用二项式或Fibonacci堆;在Python中似乎有这两者的实现,但没有产品级库。不过,实际上,二进制或d元堆的工作速度可能更快。<code>heapq</code>页面提到了如何进行更新(保留对插入到堆中的项的引用,将其标记为无效,然后插入新版本)。不过,在更新后有更快的算法来维护堆属性。请看<a href="http://en.wikipedia.org/wiki/D-ary_heap" rel="nofollow">http://en.wikipedia.org/wiki/D-ary_heap</a>以了解用于快速更新的算法,但您可能需要在数组的顶部实现自己的堆。在</p>