0% found this document useful (0 votes)
25 views14 pages

Tree Terminology

Uploaded by

amutha d
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
25 views14 pages

Tree Terminology

Uploaded by

amutha d
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 14

Tree - Terminology

In linear data structure data is organized in sequential order and in non-linear data

structure data is organized in random order. A tree is a very popular non-linear data

structure used in a wide range of applications. A tree data structure can be defined as

follows...

Tree is a non-linear data structure which organizes data in hierarchical

structure and this is a recursive definition.

A tree data structure can also be defined as follows...

Tree data structure is a collection of data (Node) which is organized in

hierarchical structure recursively

In tree data structure, every individual element is called as Node. Node in a tree data

structure stores the actual data of that particular element and link to next element in

hierarchical structure.

In a tree data structure, if we have N number of nodes then we can have a maximum

of N-1 number of links.

Example

Terminology
In a tree data structure, we use the following terminology...

1. Root
In a tree data structure, the first node is called as Root Node. Every tree must have a

root node. We can say that the root node is the origin of the tree data structure. In any

tree, there must be only one root node. We never have multiple root nodes in a tree.

2. Edge
In a tree data structure, the connecting link between any two nodes is called as EDGE.

In a tree with 'N' number of nodes there will be a maximum of 'N-1' number of edges.
3. Parent
In a tree data structure, the node which is a predecessor of any node is called

as PARENT NODE. In simple words, the node which has a branch from it to any other

node is called a parent node. Parent node can also be defined as " The node which

has child / children".

4. Child
In a tree data structure, the node which is descendant of any node is called as CHILD

Node. In simple words, the node which has a link from its parent node is called as
child node. In a tree, any parent node can have any number of child nodes. In a tree,

all the nodes except root are child nodes.


5. Siblings
In a tree data structure, nodes which belong to same Parent are called as SIBLINGS.

In simple words, the nodes with the same parent are called Sibling nodes.

6. Leaf
In a tree data structure, the node which does not have a child is called as LEAF Node.

In simple words, a leaf is a node with no child.

In a tree data structure, the leaf nodes are also called as External Nodes. External

node is also a node with no child. In a tree, leaf node is also called as 'Terminal' node.
7. Internal Nodes
In a tree data structure, the node which has atleast one child is called as INTERNAL

Node. In simple words, an internal node is a node with atleast one child.

In a tree data structure, nodes other than leaf nodes are called as Internal

Nodes. The root node is also said to be Internal Node if the tree has more than

one node. Internal nodes are also called as 'Non-Terminal' nodes.

8. Degree
In a tree data structure, the total number of children of a node is called as DEGREE of

that Node. In simple words, the Degree of a node is total number of children it has.

The highest degree of a node among all the nodes in a tree is called as 'Degree of

Tree'

9. Level
In a tree data structure, the root node is said to be at Level 0 and the children of root

node are at Level 1 and the children of the nodes which are at Level 1 will be at Level

2 and so on... In simple words, in a tree each step from top to bottom is called as a

Level and the Level count starts with '0' and incremented by one at each level (Step).
10. Height
In a tree data structure, the total number of edges from leaf node to a particular node

in the longest path is called as HEIGHT of that Node. In a tree, height of the root node

is said to be height of the tree. In a tree, height of all leaf nodes is '0'.

11. Depth
In a tree data structure, the total number of egdes from root node to a particular node

is called as DEPTH of that Node. In a tree, the total number of edges from root node

to a leaf node in the longest path is said to be Depth of the tree. In simple words,
the highest depth of any leaf node in a tree is said to be depth of that tree. In a

tree, depth of the root node is '0'.


12. Path
In a tree data structure, the sequence of Nodes and Edges from one node to another

node is called as PATH between that two Nodes. Length of a Path is total number of

nodes in that path. In below example the path A - B - E - J has length 4.

13. Sub Tree


In a tree data structure, each child from a node forms a subtree recursively. Every

child node will form a subtree on its parent node.


What is Binary Tree?
Binary tree is a tree data structure(non-linear) in which
each node can have at most two children which are
referred to as the left child and the right child.
The topmost node in a binary tree is called the root, and
the bottom-most nodes are called leaves. A binary tree can
be visualized as a hierarchical structure with the root at the
top and the leaves at the bottom.

Representation of Binary Tree


Each node in a Binary Tree has three parts:
 Data
 Pointer to the left child
 Pointer to the right child
Binary Tree is a non-linear data structure where each
node has at most two children. In this article, we will cover
all the basics of Binary Tree, Operations on Binary Tree, its
implementation, advantages, disadvantages which will help
you solve all the problems based on Binary Tree.

Introduction to Binary Tree


Properties of Binary Tree

Binary tree representation

1. The maximum number of nodes at level ‘l’ of a


binary tree is 2l:

Note: Here level is the number of nodes on the path from


the root to the node (including root and node). The level of
the root is 0
This can be proved by induction:
For root, l = 0, number of nodes = 20 = 1
Assume that the maximum number of nodes on
level ‘l’ is 2l
Since in a Binary tree every node has at most 2
children, the next level would have twice nodes,
i.e. 2 * 2l
2. The Maximum number of nodes in a binary tree of
height ‘h’ is 2h – 1:

Note: Here the height of a tree is the maximum number of


nodes on the root-to-leaf path. The height of a tree with a
single node is considered as 1
This result can be derived from point 2 above. A
tree has maximum nodes if all levels have
maximum nodes. So the maximum number of
nodes in a binary tree of height h is 1 + 2 + 4 + ..
+ 2h-1. This is a simple geometric series with h
terms and the sum of this series is 2h– 1.
In some books, the height of the root is
considered as 0. In this convention, the above
formula becomes 2h+1 – 1

3. In a Binary Tree with N nodes, the minimum


possible height or the minimum number of levels is
Log2(N+1):

Each level should have at least one element, so the height


cannot be more than N. A binary tree of height ‘h’ can have
a maximum of 2h – 1 nodes (previous property). So the
number of nodes will be less than or equal to this maximum
value
N <= 2h – 1
2h >= N+1
log2(2h) >= log2(N+1) (Taking log both
sides)
hlog22 >= log2(N+1) (h is an integer)
h >= | log2(N+1) |
So the minimum height possible is | log2(N+1) |

4. A Binary Tree with L leaves has at least | Log2L |+


1 levels:

A Binary tree has the maximum number of leaves (and a


minimum number of levels) when all levels are fully filled.
Let all leaves be at level l, then below is valid for the number
of leaves L
L <= 2l-1 [From Point 1] [Note: Here, consider
level of root node as 0]
l = | Log2L | + 1
where l is the minimum number of levels

5. In a Binary tree where every node has 0 or 2


children, the number of leaf nodes is always one
more than nodes with two children:

L=T+1
Where L = Number of leaf nodes
T = Number of internal nodes with two children
Proof:
No. of leaf nodes (L) i.e. total elements present at
the bottom of tree = 2h-1 (h is height of tree)
No. of internal nodes = {total no. of nodes} –
{leaf nodes} = { 2h – 1 } – {2h-1} = 2h-1 (2-1) – 1
= 2h-1 – 1
So , L = 2h-1
T = 2h-1 – 1
Therefore L = T + 1
Hence proved

6. In a non-empty binary tree, if n is the total


number of nodes and e is the total number of edges,
then e = n-1:

Every node in a binary tree has exactly one


parent with the exception of the root node. So if n
is the total number of nodes then n-1 nodes have
exactly one parent. There is only one edge
between any child and its parent. So the total
number of edges is n-1.

Some extra properties of binary tree are:

 Each node in a binary tree can have at most two


child nodes: In a binary tree, each node can have either
zero, one, or two child nodes. If a node has zero children,
it is called a leaf node. If a node has one child, it is called
a unary node. If a node has two children, it is called a
binary node.
 The node at the top of the tree is called the root
node: The root node is the first node in a binary tree and
all other nodes are connected to it. All other nodes in the
tree are either child nodes or descendant nodes of the
root node.
 Nodes that do not have any child nodes are called
leaf nodes: Leaf nodes are the endpoints of the tree and
have no children. They represent the final result of the
tree.
 The height of a binary tree is defined as the
number of edges from the root node to the deepest
leaf node: The height of a binary tree is the length of the
longest path from the root node to any of the leaf nodes.
The height of a binary tree is also known as its depth.
 In a full binary tree, every node except the leaves
has exactly two children: In a full binary tree, all non-
leaf nodes have exactly two children. This means that
there are no unary nodes in a full binary tree.
 In a complete binary tree, every level of the tree is
completely filled except for the last level, which
can be partially filled: In a complete binary tree, all
levels of the tree except the last level are completely
filled. This means that there are no gaps in the tree and
all nodes are connected to their parent nodes.
 In a balanced binary tree, the height of the left and
right subtrees of every node differ by at most 1: In
a balanced binary tree, the height of the left and right
subtrees of every node is similar. This ensures that the
tree is balanced and that the height of the tree is
minimized.
 The in-order, pre-order, and post-order traversal of
a binary tree are three common ways to traverse
the tree: In-order, pre-order, and post-order are three
different ways to traverse a binary tree. In-order traversal
visits the left subtree, the node itself, and then the right
subtree. Pre-order traversal visits the node itself, the left
subtree, and then the right subtree. Post-order traversal
visits the left subtree, the right subtree, and then the
node itself.

You might also like