Multi-ways Trees
SHEETAL WAGHMARE
M.TECH (Computer Science & Data Processing)
IIT KHARAGPUR
EMAIL-ID: shitu2iitkgp@gmail.com
sheetalw3@gmail.com
Multi way search tree
 A multiway search tree of order m is a search tree in which any node
can have at the most m children. The properties of a non-empty m way
search tree of order m are
1. Each node can hold maximum m-1 keys and can have maximum m
children.
2. A node with n children has n-1 key values i.e the number of key
values is one less than the number of children. Some of the children
can be NULL(empty subtree)
3. The keys in a node are in ascending order.
4. Keys in non-leaf node will divide the left and right subtrees where
values of left subtree keys will be less and value of right subtree keys
will be more than that particular key.
SHEETALWAGHMARE FROM IIT KHARAGPUR
Example
C1 K1 C2 K2 C3 K3 C4 K4 C5 K5 C6 K6 C7 K7 C8
1. This node has the capacity to hold 7 keys and 8 children.
2. K1 < K2 < K3 < K4 < K5 < K6 < K7
3. The key K1 is greater then all the keys in subtree pointed to by C1 and
less than all the keys in subtree pointed to by pointer C2. Similarly this
relation holds true for other keys also.
4. Keys(C1) < K1< Keys(C2) < K2 < Keys(C3) < K3 < Keys(C4)< K4 ….
Consider a node of m-way search tree of order 8
SHEETALWAGHMARE FROM IIT KHARAGPUR
Note:
From the definition of m-way search trees, we can say
that m-way search trees are generalized form of Binary
Search Trees and a Binary search tree can be considered as
an m-way search tree of order 2.
SHEETALWAGHMARE FROM IIT KHARAGPUR
B-Tree
 A B-tree of order m can be defined as an m-way search tree which is either
empty or satisfies the following properties:-
1. All leaf nodes are at the same level.
2. All non-leaf nodes (except root node) should have atleast m/2 children.
3. All nodes (except root node) should have atleast [(m/2) – 1] keys.
4. If the root node is a leaf node, then it will have atleast one key. If the
root node is a non-leaf node, then it will have atleast 2 children and
atleast one key.
5. A non-leaf node with n-1 keys values should have n non NULL children.
B-Tree is also known as Height Balanced m-way search tree
SHEETALWAGHMARE FROM IIT KHARAGPUR
Example
 B-tree of order 5
30 70
76 888 25 40 50
11 19 27 29 32 37 43 49 77 85 89 9756 67
71 73 75
1 3 5 7
SHEETALWAGHMARE FROM IIT KHARAGPUR
Searching in B-tree
30 70
76 888 25 40 50
11 19 27 29 32 37 43 49 77 85 89 9756 67
71 73 75
1 3 5 7
Suppose we want to search for 19. Searching will start from the root node
so first look at node [30 70] , the key is not there & since 19<30 , we move
to leftmost child of root which is [8 25]. The key is not present in this node
also 19 lies between 8 and 25 so we move to node [11 19] where we get the
desired key.
19<30
8<19<25
SHEETALWAGHMARE FROM IIT KHARAGPUR
Insertion in B-tree
 Create a B-tree of order 5
10,40,30,35,20,15,50,28,25,5,60,19,12,38,27,90,45,48
10 30 35 40 10 20 30 35 40
Node can contain only 4 values so
we will split the node
10 20
30
35 40
10 20
30
35 40
12 15 19 45 50 60 9025 27 285 38
SHEETALWAGHMARE FROM IIT KHARAGPUR
Now to insert 48
10 20
30
35 40
12 15 19 45 50 60 9025 27 285 38
10 20
30
35 40 50
12 15 19 45 5025 27 285 38
We cannot insert
48 in this node
bcz node can
contain at the
most 4 values
only. So we have
to split the node
45 48 50 60 90
60 90
Move
50 to
parent
node
SHEETALWAGHMARE FROM IIT KHARAGPUR
Animation for insertion
Insertion in Full Tree
Insertion when tree is not FULL
SHEETALWAGHMARE FROM IIT KHARAGPUR
SHEETAL WAGHMARE FROM IIT KHARAGPUR

Multi ways trees

  • 1.
    Multi-ways Trees SHEETAL WAGHMARE M.TECH(Computer Science & Data Processing) IIT KHARAGPUR EMAIL-ID: shitu2iitkgp@gmail.com sheetalw3@gmail.com
  • 2.
    Multi way searchtree  A multiway search tree of order m is a search tree in which any node can have at the most m children. The properties of a non-empty m way search tree of order m are 1. Each node can hold maximum m-1 keys and can have maximum m children. 2. A node with n children has n-1 key values i.e the number of key values is one less than the number of children. Some of the children can be NULL(empty subtree) 3. The keys in a node are in ascending order. 4. Keys in non-leaf node will divide the left and right subtrees where values of left subtree keys will be less and value of right subtree keys will be more than that particular key. SHEETALWAGHMARE FROM IIT KHARAGPUR
  • 3.
    Example C1 K1 C2K2 C3 K3 C4 K4 C5 K5 C6 K6 C7 K7 C8 1. This node has the capacity to hold 7 keys and 8 children. 2. K1 < K2 < K3 < K4 < K5 < K6 < K7 3. The key K1 is greater then all the keys in subtree pointed to by C1 and less than all the keys in subtree pointed to by pointer C2. Similarly this relation holds true for other keys also. 4. Keys(C1) < K1< Keys(C2) < K2 < Keys(C3) < K3 < Keys(C4)< K4 …. Consider a node of m-way search tree of order 8 SHEETALWAGHMARE FROM IIT KHARAGPUR
  • 4.
    Note: From the definitionof m-way search trees, we can say that m-way search trees are generalized form of Binary Search Trees and a Binary search tree can be considered as an m-way search tree of order 2. SHEETALWAGHMARE FROM IIT KHARAGPUR
  • 5.
    B-Tree  A B-treeof order m can be defined as an m-way search tree which is either empty or satisfies the following properties:- 1. All leaf nodes are at the same level. 2. All non-leaf nodes (except root node) should have atleast m/2 children. 3. All nodes (except root node) should have atleast [(m/2) – 1] keys. 4. If the root node is a leaf node, then it will have atleast one key. If the root node is a non-leaf node, then it will have atleast 2 children and atleast one key. 5. A non-leaf node with n-1 keys values should have n non NULL children. B-Tree is also known as Height Balanced m-way search tree SHEETALWAGHMARE FROM IIT KHARAGPUR
  • 6.
    Example  B-tree oforder 5 30 70 76 888 25 40 50 11 19 27 29 32 37 43 49 77 85 89 9756 67 71 73 75 1 3 5 7 SHEETALWAGHMARE FROM IIT KHARAGPUR
  • 7.
    Searching in B-tree 3070 76 888 25 40 50 11 19 27 29 32 37 43 49 77 85 89 9756 67 71 73 75 1 3 5 7 Suppose we want to search for 19. Searching will start from the root node so first look at node [30 70] , the key is not there & since 19<30 , we move to leftmost child of root which is [8 25]. The key is not present in this node also 19 lies between 8 and 25 so we move to node [11 19] where we get the desired key. 19<30 8<19<25 SHEETALWAGHMARE FROM IIT KHARAGPUR
  • 8.
    Insertion in B-tree Create a B-tree of order 5 10,40,30,35,20,15,50,28,25,5,60,19,12,38,27,90,45,48 10 30 35 40 10 20 30 35 40 Node can contain only 4 values so we will split the node 10 20 30 35 40 10 20 30 35 40 12 15 19 45 50 60 9025 27 285 38 SHEETALWAGHMARE FROM IIT KHARAGPUR
  • 9.
    Now to insert48 10 20 30 35 40 12 15 19 45 50 60 9025 27 285 38 10 20 30 35 40 50 12 15 19 45 5025 27 285 38 We cannot insert 48 in this node bcz node can contain at the most 4 values only. So we have to split the node 45 48 50 60 90 60 90 Move 50 to parent node SHEETALWAGHMARE FROM IIT KHARAGPUR
  • 10.
    Animation for insertion Insertionin Full Tree Insertion when tree is not FULL SHEETALWAGHMARE FROM IIT KHARAGPUR
  • 11.
    SHEETAL WAGHMARE FROMIIT KHARAGPUR