Open In App

How is an AVL tree different from a B-tree?

Improve
Improve
Like Article
Like
Save
Share
Report

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).

Last Updated : 26 Sep, 2022
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads