## Definition of Binary Search Tree Types

Binary search tree is considered one of the most important and frequently used data structures being used in any of the programming languages. Binary search tree types help in fetching most of the abstract data present in the form of nodes within a tree. It helps in making the overall search for particular information in a hierarchical format in the sense the top node of the entire tree is the root of the node followed by sub-nodes. These arrangements of nodes within the tree have some rules and regulations to be maintained.

### Binary Search Tree Types

Binary search tree types are often known for their non-linear way of arranging the data present within the tree. These Binary search trees are usually used to fetch the data that are present as abstract data and are mostly used in a hierarchical manner. Binary search tree consists of a key and its associated elements in some of the other ways which makes the searching process a little streamlined. Thus there are various categories of Binary search tree types that are present as data structure and are used as per requirement. They are categorized as follows:

1. Full Binary Tree

2. Complete Binary Tree

3. Balanced Binary Tree

4. Perfect Binary Tree

5. Degenerate Binary Tree

Each of the binary trees mentioned is used for searching information in one or the other form as per requirement.

#### 1. Full Binary Search Tree

Full Binary Search Tree is also a kind of binary tree where the tree either has zero or at max two children of the same node in the sense that the arrangement of nodes in the tree is in such a way where the binary tree has either two child nodes of parent’s nodes or the parent node itself is considered as the parent node for any further manipulation and search to be applied for.

There are certain assumptions like Full Binary Tree is designed in a way where every node except the parent or leaf node consists of two children.

But again if the tree consists of only one child then in that case that tree will not be considered as a Full Binary search tree.

Thus the formula can be fabricated in this way:

Final Binary Search Tree = All the nodes present in form of a leaf node or external node = number of internal nodes present within the tree i.e. the internal node + one.

#### 2. Complete Binary Tree

Complete Binary Search tree is another type of binary search tree that is used for performing a search activity based on its own hierarchical pattern. In complete binary tree, all three levels are filled with nodes completely except the tree which is present in the lowest level.

There is a convention like the lowest level or the last level mentioned earlier should be designed or present in a way where the nodes present within the tree should be placed on the left-hand side of the present tree then only it will be considered as a complete binary tree as per the convention.

If in case the nodes in the binary tree is present in both the left and right-hand side of the last node of the tree then it cannot be considered as a complete Binary tree.

#### 3. Balanced Binary Tree

In Balanced Binary tree as its name suggests should be in a form where the left subtree’s height should be more than one level when compared to the right subtree and vice versa.

A binary tree is said to be balanced only in case the time complexity and height of tree come out to be O (log N) where N represents the number of nodes.

Some of the examples to illustrate balanced binary tree involves Red-Black Trees and AVL tree.

#### 4. Perfect Binary Tree

Perfect Binary Tree is another type of binary search tree that is used for solving all the internal nodes issues related to where the nodes are present at the same level.

They are said to be perfect if on the same level of the node present the same tree or internal nodes.

Even the search is performed on the same level of the tree or say at the same depth of the nodes within the tree is maintained.

Perfect Binary Tree consists of the perfect tree only in one scenario where the height of the tree is in form of 2h-1.

#### 5. Degenerate Binary Tree

Degenerate Binary Tree is also considered one of the recommended trees in terms of performing manipulation and search in the tree because of nature and behavior it possesses.

Degenerate Binary Tree is alternatively called a pathological binary tree where the internal nodes present within the tree consist of only one single child.

Such kinds of trees which have only one single child forms a perfect Degenerate Binary Tree.

If compared with other data structure Degenerate binary tree somewhat resembles and behave same as linked-list according to performance measurement.

In Degenerate Binary Tree since it resembles a linked list all the operations similar to it like insertion of new node or addition of new node, deletion of any node, and many more can be performed giving more flexibility to the user and satisfies the requirement as well but the end of the node should have one value somehow.

**Note:** Binary Search Trees have a lot of significance in the field of graph theory, artificial intelligence, and many more since there is much essential information that is stored in the form of key and value within the nodes of the tree and can be manipulated accordingly.

### Conclusion

Binary Search trees give developers the flexibility to play around with information using some of the searching techniques which involves key and value pair for most of its manipulation. Binary search trees make the searching experience streamlined and data availability at each node easy for reference. It gives the developers insight into the operations and accuracy of the data after performing a search at each level of the tree.

### Recommended Articles

This is a guide to Binary Search Tree Types. Here we discuss the definition, various categories of Binary search tree types. You may also have a look at the following articles to learn more –

- BinarySearch() in Java
- B Tree in Data Structure
- Searching in Data Structure
- AVL Tree in Data Structure

85 Online Courses | 67 Hands-on Projects | 660+ Hours | Verifiable Certificate of Completion

4.8

View Course

Related Courses