算一算 B+树要几层

算一算 B+树要几层

补全 levels:每个节点装 fanout 个键,要索引 total 条,返回至少几层。 算 100 个键、一百万条的情况。

阅读更多 →
二叉树装同样多要多高

二叉树装同样多要多高

同样一百万条数据,二叉树要多少层。运行下面这段程序: n = 1 lv = 0 while n < 1000000: n = n * 2 lv += 1 print(lv)

阅读更多 →
三层能装多少条

三层能装多少条

每个节点装 100 个键的 B+树,三层最多能索引多少条。运行下面这段程序: print(100 * 100 * 100)

阅读更多 →
数据库索引为什么不用普通 BST

数据库索引为什么不用普通 BST

数据库索引用 B+树而不是普通二叉搜索树,因为【0】。

阅读更多 →
B+树和 B 树的区别

B+树和 B 树的区别

B+树相比 B 树,最大的不同是【0】。

阅读更多 →
B+树的节点为什么装那么多键

B+树的节点为什么装那么多键

B+树一个节点动辄装几百个键,原因是【0】。

阅读更多 →
把违规那个染黑再检查一遍

把违规那个染黑再检查一遍

同一个 no_red_red。这次先把 13 染成黑色,再检查一遍。 染完之后应该就合格了。

阅读更多 →
⚠️ 红节点的孩子必须是黑的

⚠️ 红节点的孩子必须是黑的

补全 no_red_red:检查有没有"红节点挂着红孩子"。没有返回 True,有返回 False。 这棵树里 15 是红的、它左边的 13 也是红的——正好违规。

阅读更多 →
数一数黑节点

数一数黑节点

补全 count_black:递归数出树里黑节点的个数。

阅读更多 →
根是黑的吗

根是黑的吗

同一棵树。运行下面这段程序: class RNode: def __init__(self, val, color): self.val = val self.

阅读更多 →