斐波那契堆在任何地方都在实践中使用吗?我环顾四周,找到了相关问题的答案(见下文),但没有什么能真正回答这个问题。
- 斐波那契堆有很好的实现,包括标准库,如 Boost C++。这些库包含斐波那契堆的事实表明它们必须在某处有用。
- 我们知道斐波那契堆在实践中更快需要满足某些条件:“要在实践中从斐波那契堆中受益,您必须在减少键非常频繁的应用程序中使用它们”;"要使 Fibonacci Heap 真正发挥作用,您需要以下两种情况之一:a) 昂贵的比较:Fib Heaps 最大限度地减少了组织数据所需的比较次数。b) 大多数操作是 updateKey/insert/delete。作为 Fibonacci将更新‘分组’在一起,直到下一个 extractMin,‘batch’越大,它的效率就越高。 ”
- 有一种称为“Brodal Queue”的数据结构,我不确定我之前是否听说过它似乎具有至少与斐波那契堆一样好的时间复杂度行为。 这是一个很好的表格,其中比较了不同种类堆的各种操作的时间复杂度。
- 关于是否有任何应用斐波那契或二项式堆的问题,回答者仅给出了二项式堆的示例。