• edited by
1,180 views
3 3 votes

Which of these statements is not true about a b-Tree $T$ with height $h$ and $n$ nodes, assuming that each node takes exactly $1$ $disk$ operation to read?

  1.  Finding a node in $T$ cannot require more than $O\left ( h \right )$ disk operations (in other words, $O\left ( h \right )$ time, if only disk reads and writes are counted).
  2. $h$ cannot exceed $\log t \left ( \left ( n+1 \right )/2 \right )$, where $t$ is the minimum node degree.
  3. If each node in $T$ is augmented with an integer showing the size of that node’s sub-tree, then $n$ additional nodes can be inserted into $T$ in a total of $O \left ( n \times h \right )$ CPU operations.
  4. Rotations may be required during insertion to keep $T$ balanced.

1 Answer

Best answer
7 7 votes

Statement  A    " Finding a node in T cannot require more than O(h) disk operations ( in other words, O(h) time, if only disk reads and writes are counted ). "

is  True.

Reason :  Let each node has a minimum of t children . Then searching for a node takes no more time than reading down the tree in O(h) steps and reading across each node in O(t) steps for a total of O(t * h) CPU operations and O(h) disk operations, where t is a constant .

Statement B says " h cannot exceed logt ((n + 1)/2), where t is the minimum node degree. " 

is True .

Reason : Since each node has a minimum of t children, the height of the tree is O(logt n) and h cannot exceed logt ((n + 1) / 2) . 

Statement C  says " If each node in T is augmented with an integer showing the size of that node’s sub-tree, then n additional nodes can be inserted into T in a total of O(n * h) CPU operations. " 

is True .

Reason : Even though the tree may grow due to splits during insertion, an insertion still takes no more than O(t * h) CPU operations, so inserting n nodes takes O(n * t * h) = O(n * h) CPU operations.

Statement D  says : " Rotations may be required during insertion to keep T balanced. " 

is Not True .

Reason :   B-Trees are a generalization  form of a binary trees (which use a single key in each node to segregate children into two groups). 

In B Trees Nodes may be split during key insertion (beginning with the root, if necessary). This has the effect that younger nodes tend to appear near the top of the tree, whereas with binary trees, younger nodes appear near the bottom of the tree.

Thats why  Rotations are not used during insertion to keep that Tree balanced. 

• selected by
Answer:
Position:
Show:

Related questions

1 1 vote
2 2 answers
739
739 views
Bikram asked Jan 24, 2017
739 views
Consider the set of relations for the given $SQL$ query:EMP (eno, ename) DEPT (dno,dname) WORKS_IN (eno,dno)Where primary keys of the relations are eno, dno in $EMP$ tabl...
1 1 vote
2 answers 2 answers
1.6k
1.6k views
Bikram asked Jan 24, 2017
1,587 views
Consider the following constraints on a relation schema:A student can register for at most $t$ courses and each course can have at most $p$ students.Each student is enrol...
6 6 votes
3 answers 3 answers
1.8k
1.8k views
Bikram asked Jan 24, 2017
1,829 views
Which of the following statements is NOT true? Deadlock can never occur if all resources can be shared by competing proces...
1 1 vote
1 answers 1 answer
1.0k
1.0k views
Bikram asked Jan 24, 2017
1,009 views
Which of the following schedules are conflicts serializable?S1: $r1$ $\left ( A \right )$, $r1$$\left ( B \right )$, $w2$$\left ( A \right )$, $r3$ $\left ( A \right )$...