# What is a 2-3 Tree in Data Structure?

### Tree Data structure

The information about the tree is self-explanatory. Trees are ordered and, therefore, not linear. But they are actually designed differently. Tree A node-based data model that represents and supports the structure as a structure. In an asynchronous database, data is stored in a tree data structure called a database. All data types are stored in a central location. Each line of text is called the lower branch of the data type tree.

Two types of plants. This is limited to confidential information. Because this data processing is an individual process. So, there can be more than two children. This means that a binary plant can produce 0, 1 or, 2 seeds at any time. Binary search trees can quickly parse nested and linked expressions. This allows binary trees to provide values ??from list and associate arrays. This makes it easier to find hidden items (because it is a powerful data structure).

Properties of a tree

1. Number of edges – A connection between two nodes in a tree data structure is called an edge. There is only one path between two file tree nodes. A positive number in this data structure is equal to -1 if all nodes in the tree data structure are equal.
2. The circle level is the sum of all subtrees defined in the tree data structure of the selected node, called the node level. The root node level (also known as the tree level) should be the highest level relative to other nodes in the tree data structure. The leaf level of the data tree must be zero (0).
3. Tree Level – The root node level is the tree level.

### Types of trees in data structures

Now that we know what trees are let us now learn the different types of trees in data structures.

There are six types of trees in the data structure, and they are mentioned below:

1. General tree
2. Binary tree
3. Binary search tree
4. AVL tree (Adelson, Velskii, & Landis Tree)
5. Red-Black tree
6. N array tree

Binary trees

These types of trees have constraints (rules) on their hierarchy. All the nodes of a binary tree either have two or zero (0) child nodes. The two child nodes of a binary tree are treated as the left child node and right child node, respectively. The binary trees are the most popular trees among all the other trees in data structures. Other trees like BST (Binary search tree) and AVL tree (Adelson, Velskii, & Landis Tree) are formed from binary trees by applying some specific constraints.

These types of trees have constraints (rules) on their hierarchy. All the nodes of a binary tree either have two or zero (0) child nodes. The two child nodes of a binary tree are treated as the left child node and right child node, respectively. The binary trees are the most popular trees among all the other trees in data structures. Other trees like BST (Binary search tree) and AVL tree (Adelson, Velskii, & Landis Tree) are formed from binary trees by applying some specific constraints. AVL trees (Adelson, Velskii, & Landis Tree) are formed from binary trees by applying some constraints.

Note:

Height balanced tree

A height-balanced tree is a type of binary tree. If the absolute difference between the heights of the left and right subtree is less than or equal to 1, then the given binary tree is considered a height-balanced binary tree. This height-balanced tree includes the AVL tree (Adelson, Velskii & Landis Tree) and the red-black tree.

Note:

Best case

The possibility of solving an algorithm in its shortest time is known as the best case.

Average case

The possibility of solving an algorithm in its average time is known as the average case.

Worst case

The possibility of solving an algorithm in its greatest period is known as the worst case.

Note:

B+ tree

A specialized m – way tree, which is popularly used for disc access, is known as a B tree. The B+ tree is considered an extension of the B tree. It allows efficiency in search, deletion, and insertion operations.

B- tree

B- trees are self-balancing trees in data structures. It not only allows search deletions in logarithmic time, insertions, and sequential access but also maintains sorted data. Binary search trees are a part of B- trees (Binary search trees must have a maximum of only two children for each node, while B- trees can have more than two children for all the nodes present in the tree). B- trees differ from other self-balancing trees due to their efficient storage systems that write as well as read huge blocks of data (for example, in file systems, databases, etc.)

### 2 – 3 Trees

We know that the average case consumption of time to perform deletion, insertion, and search operations in a binary tree is given by O (log N) [Where N represents the number of nodes present in a given tree]. We also know that the worst-case consumption of time to perform deletion, insertion, and search operations in a binary tree is given by O (log N) [Where N represents the number of nodes present in a given tree].

2 – 3 tree is a height-balanced tree-like AVL tree (Adelson, Velskii, & Landis Tree), B tree, and Red-black tree.

We can consider a 2-3 tree as a B-tree with an order of 3.

Properties of 2 3 tree:

The properties of a 2 3 tree are mentioned below:

1. The parent nodes of a 2-3 tree that have 2 child nodes are called 2–nodes. They possess two child nodes and one data value.
2. The parent nodes of a 2-3 tree that have 3 child nodes are called 3–nodes. They possess three child nodes and two data values.
3. The data of that is present in a 2-3 tree is stored in a sorted manner.
4. 2 3 trees are balanced trees.
5. All the leaf nodes of a 2 3 tree are present at a common level.
6. In a 2 3 tree, each one among all the nodes belongs to one of the following categories: 3–node, 2–node, or leaf node.
7. The insertion operation in a 2–3 tree is done at the leaf nodes of the tree.
8. We follow two steps, namely base cases and recursive calls to perform search operations in a given 2–3 tree.
9. We can perform the insertion operation in a 2–3 tree with 3 possible cases: insertion operation on a node that has one data value, insertion operation on a node that has two data values and its parent node contains one data value, insertion operation on a node that has two data values, and its parent node also contains two data values.
10. We can also perform deletion operations in a 2–3 tree.
11. The 2-3 tree is not a binary tree.
12. All the nodes in a 2–3 tree that are not external nodes contain either two or three child nodes.