CONTENT
INTRODUCTION
TREE TERMINOLOGY
BINARY TREE TERMINOGY
REAL TIME APPLICATION OF TREES
INTRODUCTION
Tree is a non-linear data structure which
organizes data in a hierarchical structure.
In a tree a node may be connected with
more than one node.
It is a collection of nodes connected by direct (or
indirect) edges.
It consists of a distinguished node which is called
the 'root node'..
OR
A tree is a connected graph without any circuits.
Example of TREE
Tree Terminology
The important terms related to tree data structure are-
1. ROOT:
The first node from where the tree originates is called as a root node.
A node which doesn’t have a parent.
In any tree, there must be only one root node.
We can never have multiple root nodes in a tree data structure.
Here, node A is the only root
node.
•
2.EDGE:
The connecting link between any two nodes is called as an edge.
In a tree with n number of nodes, there are exactly (n-1) number of edges.
3.PARENT:
The node which has a branch from it to any other node is called as a parent node.
In other words, the node which has one or more children is called as a parent node.
In a tree, a parent node can have any number of child nodes.
Here,
Node A is the parent of nodes B and C
Node B is the parent of nodes D, E and F
Node C is the parent of nodes G and H
Node E is the parent of nodes I and J
Node G is the parent of node K
4.CHILD:
The node which is a descendant of some node is called as a child node.
All the nodes except root node are child nodes.
Here,
Nodes B and C are the children of node A
Nodes D, E and F are the children of node B
Nodes G and H are the children of node C
Nodes I and J are the children of node E
Node K is the child of node G
5.SIBLINGS:
Nodes which belong to the same parent are called as siblings.
In other words, nodes with the same parent are sibling nodes.
Here,
Nodes B and C are siblings
Nodes D, E and F are siblings
Nodes G and H are siblings
Nodes I and J are siblings
6.DEGREE:
Degree of a node is the total number of children of that node.
Here,
Degree of node A = 2
Degree of node B = 3
Degree of node C = 2
Degree of node D = 0
Degree of node E = 2
Degree of node F = 0
Degree of node G = 1
Degree of node H = 0
Degree of node I = 0
Degree of node J = 0
Degree of node K = 0
7.INTERNAL NODES:
The node which has at least one child is called as an internal node.
Internal nodes are also called as non-terminal nodes.
Every non-leaf node is an internal node.
Here, nodes A, B, C, E and G are internal nodes.
8.LEAF NODE:
The node which does not have any child is called as a leaf node.
Leaf nodes are also called as external nodes or terminal nodes.
Here, nodes D, I, J, F, K and H are leaf nodes.
9.LEVEL :
In a tree, each step from top to bottom is called as level of a tree.
The level count starts with 0 and increments by 1 at each level or step.
10.HEIGHT:
Total number of edges that lies on the longest path from any leaf node to a
particular node is called as height of that node.
Height of a tree is the height of root node.
Height of all leaf nodes = 0
Here,
Height of node A = 3
Height of node B = 2
Height of node C = 2
Height of node D = 0
Height of node E = 1
Height of node F = 0
Height of node G = 1
Height of node H = 0
Height of node I = 0
Height of node J = 0
Height of node K = 0
11.DEPTH:
Total number of edges from root node to a particular node is called as depth of that node.
Depth of a tree is the total number of edges from root node to a leaf node in the longest
path.
Depth of the root node = 0
The terms “level” and “depth” are used interchangeably.
Here,
Depth of node A = 0
Depth of node B = 1
Depth of node C = 1
Depth of node D = 2
Depth of node E = 2
Depth of node F = 2
Depth of node G = 2
Depth of node H = 2
Depth of node I = 3
Depth of node J = 3
Depth of node K = 3
12.SUBTREE:
In a tree, each child from a node forms a subtree recursively.
Every child node forms a subtree on its parent node.
13.FOREST: A forest is a set of disjoint trees.
BINARY TREE –TYPES OF BINARY TREE
We have discussed-
Tree is a non-linear data structure.
In a tree data structure, a node can have any
number of child nodes.
BINARY TREE: Binary tree is a special tree data structure in which each node
can have at most 2 children.
Thus, in a binary tree,
Each node has either 0 child or 1 child or 2 children.
TYPES OF BINARY TREES: Binary trees can be
of the following types-
1.ROOTED BINARY TREE: A rooted binary tree is a binary tree that satisfies
the following 2 properties-
It has a root node.
Each node has at most 2 children.
2.FULL/STRICTLY BINARY TREE: A binary tree in which every node
has either 0 or 2 children is called as a Full binary tree.
Full binary tree is also called as Strictly binary tree.
Here,
First binary tree is not a full binary tree.
This is because node C has only 1 child.
3.COMPLETE/FULL BINARY TREE: A complete binary tree is a
binary tree that satisfies the following 2 properties-
Every internal node has exactly 2 children.
All the leaf nodes are at the same level. Complete binary tree is
also called as Perfect binary tree.
Here,
First binary tree is not a complete binary tree.
This is because all the leaf nodes are not at the same level.
4.ALMOST COMPLETE BINARY TREE: An almost complete binary tree is a binary tree
that satisfies the following 2 properties-
All the levels are completely filled except possibly the last level.
The last level must be strictly filled from left to right.
Here,
First binary tree is not an almost complete binary tree.
This is because the last level is not filled from left to right.
5.SKEWED TREES: A skewed binary tree is a binary tree that satisfies the
following 2 properties-
All the nodes except one node has one and only one child.
The remaining node has no child.
REAL TIME APPLICATION OF TREES:
Some REAL TIME applications of the
trees are:
XML Parser uses tree algorithms.
XML parser is a software library or a
package that provides interface for
client applications to work with XML
documents
CONT…
Domain Name Server(DNS) also uses tree structures.
Domain Name Server (DNS) is a standard protocol
that helps Internet users discover websites
using human readable addresses. ... For example,
the domain name www.ns1.com you are viewing now,
translates to the IP address 104.20.
Posting questions on websites like Quora, the
comments are child of questions .
*******************************
THANK YOU