- 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 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
- 3. 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
- 4. 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
- 5. 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
- 6. 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
- 7. 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
- 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 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
- 10. Animation for insertion Insertion in Full Tree Insertion when tree is not FULL SHEETALWAGHMARE FROM IIT KHARAGPUR
- 11. SHEETAL WAGHMARE FROM IIT KHARAGPUR