Creating a B-tree



我正在复习明天的考试,被一道题卡住了。我必须画一个有效的b树,其中M = 4, L = 3包含1-25的值。问题是我不能让我的树看起来像答案。答案树看起来像这样:

             9            14             22
            /       |             |        
         4 7       12           17 20        24
        / |      /           /  |        /  
       1  4  7   9   12      14  17  20   22   24
       2  5  8   10  13      15  18  21   23   25
       3  6      11          16  19  21  

对不起,如果这是难以阅读。也许我抄错了答案,但有人能确认这是否是正确的答案吗?如果是这样,这个答案是如何得出的?

看起来您在谈论B+树而不是B树,并且有一个小错别字:您在叶子[20,21,21]中重复了键21。如你所说,订单是4。

答案是一个有效的B+树,但不是你按顺序加1-25的值得到的那个。问题是给出了键的具体顺序,还是让你自己决定?除了一个漫长的试验和错误过程,我不确定您将如何确定顺序,但您可以通过使用这里的演示页面进行尝试:

http://goneill.co.nz/btree-demo.php

如果你想尝试不同的插入序列,你最好下载离线版本并编辑Hardcoded()函数:

http://goneill.co.nz/btree.php

这些都是用JavaScript写的,可能对你没什么用

最新更新