MCQ
Q.
A B-tree of order m=5 has a height h=3. What is the minimum number of keys it can contain?
Correct Answer: A
To find the minimum number of keys in a B-tree of order `m` and height `h`, we need to consider the minimum number of children and keys allowed at each node level.
1. **Order `m=5`**:
* Minimum keys for any non-root node: `ceil(m/2) - 1 = ceil(5/2) - 1 = 3 - 1 = 2` keys.
* Minimum children for any internal node: `ceil(m/2) = ceil(5/2) = 3` children.
* Root node specific: If `h>0`, it must have at least 1 key and at least 2 children.
2. **Height `h=3`**: This means there are 4 levels of nodes (Level 0 to Level 3).
3. **Calculate minimum nodes and keys at each level:**
* **Level 0 (Root Node)**:
* Number of nodes: 1
* Minimum keys: 1 (since `h=3 > 0`)
* **Level 1 (Children of Root)**:
* The root must have at least 2 children. So, 2 nodes at Level 1.
* Minimum keys per node: 2
* Total keys at Level 1: `2 * 2 = 4`
* **Level 2 (Children of Level 1 Nodes)**:
* Each of the 2 nodes at Level 1 must have at least `ceil(m/2) = 3` children.
* Number of nodes at Level 2: `2 * 3 = 6`
* Minimum keys per node: 2
* Total keys at Level 2: `6 * 2 = 12`
* **Level 3 (Leaf Nodes - Children of Level 2 Nodes)**:
* Each of the 6 nodes at Level 2 must have at least `ceil(m/2) = 3` children.
* Number of nodes at Level 3: `6 * 3 = 18`
* Minimum keys per node: 2
* Total keys at Level 3: `18 * 2 = 36`
4. **Total Minimum Keys**:
Sum of minimum keys from all levels = `1 (Level 0) + 4 (Level 1) + 12 (Level 2) + 36 (Level 3) = 53`.
Therefore, the minimum number of keys the B-tree can contain is 53.