B – trees, Data Structure & Algorithms

Assignment Help:

B-trees are special m-ary balanced trees utilized in databases since their structure allows records to be added, deleted & retrieved with guaranteed worst case performance.

A B-Tree is a special multiway tree. In a B-Tree each of nodes may contain a large number of keys. The number of subtrees of each of node may also be large. A B-Tree is designed to branch out in this great number of directions and to contain many keys in each node so that height of the tree is comparatively small.

It means that only a small number of nodes have to be read from disk to retrieve an item.

A B-Tree of order m is multiway search tree of order m such as

  • All leaves are onto the bottom level
  • All internal nodes (except root node) contain at least m/2 (non empty) children
  • The root node can have as few as 2 children if this is an internal node and can have no children if the root node is leaf node
  • Each leaf node has to contain atleast (m/2) - 1 keys. The given is the structure for a B-tree :

struct btree

{          int count;         // number of keys stored into the current node

            item_type key[3];        // array to hold 3 keys

            long branch [4];           // array of fake pointers (records numbers)

};                    

Figure depicts an order 5 B-tree.

1847_B – TREES.png

Figure: A B-tree of order 5


Related Discussions:- B – trees

Deletion of any element from the circular queue, Algorithm for deletion of ...

Algorithm for deletion of any element from the circular queue: Step-1: If queue is empty then say "queue is empty" & quit; else continue Step-2: Delete the "front" element

Circular doubly link list, what is circular doubly link list?write down the...

what is circular doubly link list?write down the algorithm for insertion of elements in circular doubly link list

Deletion of any element from the queue, Program segment for the deletion of...

Program segment for the deletion of any element from the queue delmq(i)  /* Delete any element from queue i */ { int i,x; if ( front[i] == rear[i]) printf("Queue is

Dynamic programming., Count Scorecards(30 points) In a tournament, N playe...

Count Scorecards(30 points) In a tournament, N players play against each other exactly once. Each game results in either of the player winning. There are no ties. You have given a

C++ function, Write c++ function to traverse the threaded binary tree in in...

Write c++ function to traverse the threaded binary tree in inorder traversal

Difference in grounded header and circular header Link List, Q. State the d...

Q. State the difference between a grounded header link list and a circular header link list?     Ans: A header linked list is a linked list which all the time c

Array vs. ordinary variable, Q. Describe what do you understand by the term...

Q. Describe what do you understand by the term array? How does an array vary from an ordinary variable? How are the arrays represented in the specific memory?

Tree, application of threaded binary treee

application of threaded binary treee

Convertion, how we can convert a graph into tree

how we can convert a graph into tree

Which sorting algorithms not have running time of o (n2), Which sorting al...

Which sorting algorithms does not have a worst case running time of  O (n 2 ) ? Merge sort

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd