CLRS的Fibonacci堆大小(x)分析有缺陷吗?

时间:2011-09-03 06:32:51

标签: algorithm heap clrs fibonacci-heap

在CLRS的算法导论第3版P.525中,当它分析大小(x)的下限时,我引用一句话“因为向节点添加子节点不能减少节点的大小,值Sk的单调增加与k“。但事实上,我认为我可以给出一个反例来证明Sk不一定随k单调增加。在下图中,key = 1的节点的度数是2,并且没有其他度数为2的节点。所以S2 = 8。同样,S3 = 6。但是现在S3小于S2,这意味着Sk根本没有以k为单位增加。

2 - 0 - 4 - 2 - 5 - 8 - 7 -  1
            |               /  \
            8              2    9
                              / | \
                             10 14 16
                             |  |
                             11 15

通过执行一系列剪切和级联剪切,可以从无序二项式子树派生堆。

我想知道上面的结构是否是有效的斐波纳契堆。如果是这样,那么它也是一个有效的反例。

1 个答案:

答案 0 :(得分:2)

S k 被定义为最大下界,使得每个可能的Fibonacci堆中的每个度k子树至少具有S k 后代。