AVL Trees:
AVL tree is a self-balancing binary search tree in which each node maintain an extra factor which is called balance factor whose value is either -1, 0 or 1.
B-Tree:
A B-tree is a self – balancing tree data structure that keeps data sorted and allows searches, insertions, and deletions in O(log N) time.
Difference between AVL Tree and B-Tree:
S.No. |
AVL Trees |
B-Tree |
---|---|---|
1 |
It is a self-balancing binary search tree | It is a multi-way tree(N – ary tree). |
2 |
Every node contains at most 2 child nodes | In this tree, nodes can have multiple child nodes |
3 |
It has a balance factor whose value is either -1, 0, or 1. Balance factor = (height of left subtree)-(height of right subtree) or Balance factor = (height of right subtree)-(height of left subtree) |
B-Tree is defined by the term minimum degree ‘t‘. The value of ‘t‘ depends upon disk block size. Every node except the root must contain at least t-1 keys. The root may contain a minimum of 1 key. |
4 |
AVL tree has a height of log(N) (Where N is the number of nodes). | B-tree has a height of log(M*N) (Where ‘M’ is the order of tree and N is the number of nodes). |
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 neveropen!