📜  门| Sudo GATE 2021 测验 |问题 3

📅  最后修改于: 2021-09-27 05:54:22             🧑  作者: Mango

考虑以下 B 树和 B+ 树的数据,

Block size is  8 KB,  
Data pointer is 10 B,  
Block pointer is of 15 B and 
key size is 10 B 

以下哪个选项是正确的?

注意 –此问题是多选题 (MSQ)。
(A) B-tree的叶子节点最大阶数为230
(B) B+树(Q)的叶节点最大阶数为405
(C) B-tree(P)叶节点最大阶数与B+树(Q)叶节点最大阶数之差-175
(D)所有这些都是正确的。答案: (C)
解释:

鉴于,

Block size = 8 KB,  
Data pointer or record pointer = Rp = 10 byte
Block pointer or child pointer = Bp = 15 byte
Key size/pointer = Kp = 10 byte 

由于,B树的叶节点的最大阶数(P)由公式给出:

P(Bp) + (P-1)*(Kp + Rp) ≤ Block size
P(15) + (P-1)*(10+10) ≤    8 KB
15P + 20P - 20 ≤ 8*1024
35P ≤ 8192+20
35P ≤ 8212
35P ≤ 8212/35
P ≤ 234.63
P = 234 

取下限最大值。

并且,B+树的叶节点的最大阶数(Q)由公式给出:

(Q-1)*(Kp + Rp) + (Bp) ≤ Block size
(Q-1)*(10+10) + 15 ≤ 8 KB
20Q - 20 + 15 ≤ 8*1024
20Q - 5 ≤ 8192
20Q ≤ 8192+5
Q ≤ 8197/20
Q ≤ 409.85
Q = 409 

取下限最大值。

因此 P – Q = 234 – 409 = -175

所以,只有选项(C)是正确的。这个问题的测验
如果您发现上面的帖子有任何错误,请在下面评论