如果二项式堆表示为树的集合,为什么这个实现只有一棵树?
If binomial heaps are represented as collections of trees, why does this implementation just have one tree?
这篇关于二叉堆的Wikipedia article说二叉堆是二叉树的集合。
但是this implementation只用了一棵树。所以我很困惑——这个实现是二项式堆吗?如果是这样,仅使用一棵树如何逃脱?
您链接的实现实际上不是二项式堆。它实际上是一个二进制堆。您可以从像 bubble_up
和 bubble_down
这样的操作中看到这一点,它们用于二叉堆而不是二叉堆,并且它被表示为一个数组,这是您用二叉堆而不是二叉堆做的事情堆。
希望对您有所帮助!
这篇关于二叉堆的Wikipedia article说二叉堆是二叉树的集合。
但是this implementation只用了一棵树。所以我很困惑——这个实现是二项式堆吗?如果是这样,仅使用一棵树如何逃脱?
您链接的实现实际上不是二项式堆。它实际上是一个二进制堆。您可以从像 bubble_up
和 bubble_down
这样的操作中看到这一点,它们用于二叉堆而不是二叉堆,并且它被表示为一个数组,这是您用二叉堆而不是二叉堆做的事情堆。
希望对您有所帮助!