0% found this document useful (0 votes)
17 views23 pages

5 Tree 1

Uploaded by

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

5 Tree 1

Uploaded by

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

Data Structures (DS)

GTU # 3130702

Non-Linear Data
Structure
Tree Part-1
Basic Notations of Graph Theory

1 2 x1 1 1
x3 x1 x3
v1 v2
x2 x2
(a) 2 3 2 3

x4 x5 x4 x5
4 4
1 2 5
(d) (f)
v1 v2
(b)
x1 1 x3 x1 1 x3
x2 x2
2 3 2 3
1 2

v1 v2 x4 x5 x4
4 x5
4
(c)
(e) (g)
Non-Linear Data Structure (Tree Part-1) 2
Basic Notations of Graph Theory
 Consider diagrams shown in above figure
 Every diagrams represent Graphs
 Every diagram consists of a set of points which are shown by dots or
circles and are sometimes labelled V1, V2, V3… OR 1,2,3…
 In every diagrams, certain pairs of such points are connected by lines or
arcs
 Note that every arc start at one point and ends at another point

Non-Linear Data Structure (Tree Part-1) 3


Basic Notations of Graph Theory
 Graph
 A graph G consist of a non-empty set V called the set of nodes (points, vertices)
of the graph, a set E which is the set of edges and a mapping from the set of
edges E to a set of pairs of elements of V
 It is also convenient to write a graph as G=(V,E)
 Notice that definition of graph implies that to every edge of a graph G, we can
associate a pair of nodes of the graph. If an edge X Є E is thus associated with a pair
of nodes (u,v) where u, v Є V then we says that edge x connect u and v
 Adjacent Nodes
 Any two nodes which are connected by an edge in a graph are called adjacent nodes

Non-Linear Data Structure (Tree Part-1) 4


Graph – Concepts & Definitions
 Directed & Undirected Edge
 In a graph G=(V,E) an edge which is directed from one end to another end is called
a directed edge, while the edge which has no specific direction is called
undirected edge
 Directed graph (Digraph)
 A graph in which every edge is directed is called directed graph or digraph e.g.
b,e & g are directed graphs
 Undirected graph
 A graph in which every edge is undirected is called undirected graph e.g. c & f
are undirected graphs
 Mixed Graph
 If some of the edges are directed and some are undirected in graph then the
graph is called mixed graph e.g. d is mixed graph
Non-Linear Data Structure (Tree Part-1) 5
Graph – Concepts & Definitions
2
 Loop (Sling)
 An edge of a graph which joins a node to itself is called
a loop (sling). 2
2
 The direction of a loop is of no significance so it can 2

be considered either a directed or an undirected. 1


1 3
 Distinct Edges
 In case of directed edges, two possible edges between 1 1
any pair of nodes which are opposite in direction are 4
considered Distinct.
 Parallel Edges
 In some directed as well as undirected graphs, we may
have certain pairs of nodes joined by more than one
edges, such edges are called Parallel edges.
Non-Linear Data Structure (Tree Part-1) 6
Graph – Concepts & Definitions
 Multigraph
 Any graph which contains some parallel edges is called multigraph
 If there is no more then one edge between a pair of nodes then such a graph is
called Simple graph
 Weighted Graph
 A graph in which weights are assigned to every edge is called weighted graph

 Isolated Node
 In a graph a node which is not adjacent to any other node is called isolated node

 Null Graph
 A graph containing only isolated nodes are called null graph. In other words set
of edges in null graph is empty

Non-Linear Data Structure (Tree Part-1) 7


Graph – Concepts & Definitions
 For a given graph there is no unique diagram which
represents the graph. 1 2
 We can obtain a variety of diagrams by locating the nodes in
an arbitrary numbers.
 Following both diagrams represents same Graph. 4 3

 Indegree of Node
 The no of edges which have V as their terminal node is call as 1
indegree of node V.
 Outdegree of Node
4
 The no of edges which have V as their initial node is call as
2 3
outdegree of node V.
 Total degree of Node
 Sum of indegree and outdegree of node V is called its Total Degree or
Degree of vertex.
Non-Linear Data Structure (Tree Part-1) 8
Path of the Graph
Some of the path from 2 to 4
1 2 P1 = ((2,4))
P2 = ((2,3), (3,4))
P3 = ((2,1), (1,4))
P4 = ((2,3), (3,1), (1,4))
4 3
P5 = ((2,3), (3,2), (2,4))
P6 = ((2,2), (2,4))

 Let G=(V, E) be a simple digraph such that the terminal node of any edge
in the sequence is the initial node of the edge, if any appearing next in the
sequence defined as path of the graph.
 Length of Path
 The number of edges appearing in the sequence of the path is called length of path.
Non-Linear Data Structure (Tree Part-1) 9
Graph – Concepts & Definitions
 Simple Path (Edge Simple)
 A path in a diagraph in which the edges are distinct is called simple path or edge
simple
 Path P5, P6 are Simple Paths
 Elementary Path (Node Simple)
 A path in which all the nodes through which it traverses are distinct is called
elementary path
 Path P1, P2, P3 & P4 are elementary Path
 Path P5, P6 are Simple but not Elementary
 Cycle (Circuit)
 A path which originates and ends in the same node is called cycle (circuit)
 E.g. C1 = ((2,2)), C2 = ((1,2),(2,1)), C3 = ((2,3), (3,1), (1,2)
 Acyclic Diagraph
 A simple diagraph which does not
Non-Linear Datahave
Structure any cycle is called Acyclic Diagraph.
(Tree Part-1) 10
Tree– Concepts & Definitions
 Directed Tree
 A directed tree is an acyclic digraph which has one node called its root with in degree
0, while all other nodes have in degree 1.
 Every directed tree must have at least one node.
 An isolated node is also a directed tree.

𝑽𝟎 Root Node

𝑽𝟏 𝑽𝟕

𝑽𝟐 𝑽𝟑 𝑽𝟒 𝑽𝟖 𝑽𝟗
Terminal or
𝑽𝟓 𝑽𝟔 𝑽 𝟏𝟎 Leaf Node
Non-Linear Data Structure (Tree Part-1) 11
Tree– Concepts & Definitions

𝑽𝟓 𝑽𝟔 𝑽 𝟏𝟎 𝑽𝟎 𝑽𝟎
𝑽𝟐 𝑽𝟑 𝑽𝟒 𝑽𝟖 𝑽𝟗 𝑽𝟏 𝑽𝟕 𝑽𝟕 𝑽𝟏

𝑽𝟏 𝑽𝟕 𝑽𝟐 𝑽𝟑 𝑽𝟒 𝑽𝟖 𝑽𝟗 𝑽𝟖 𝑽𝟗 𝑽𝟐 𝑽𝟑 𝑽𝟒

𝑽𝟎 𝑽𝟓 𝑽𝟔 𝑽 𝟏𝟎 𝑽 𝟏𝟎 𝑽 𝟓 𝑽 𝟔
(a) (b) (c)

Non-Linear Data Structure (Tree Part-1) 12


Tree– Concepts & Definitions
 Terminal Node (Leaf Node)
 In a directed tree, any node which has out degree 0 is called terminal node or leaf
node.
 Level of Node
 The level of any node is the length of its path from the root.

 Ordered Tree
 In a directed tree an ordering of the nodes at each level is prescribed then such a
tree is called ordered tree.
 The diagrams (b) and (c) represents same directed tree but different ordered tree.

 Forest
 If we delete the root and its edges connecting the nodes at level 1, we obtain a set of
disjoint tree. A set of disjoint tree is a forest.
Non-Linear Data Structure (Tree Part-1) 13
Representation of Directed Tree
 Other way to represent directed tree are
 Venn Diagram
𝑽𝟎
 Nesting of Parenthesis
𝑽𝟏 𝑽𝟕
 Like table content of Book
 Level Format
𝑽𝟐 𝑽𝟑 𝑽𝟒 𝑽𝟖 𝑽𝟗

𝑽𝟓 𝑽𝟔 𝑽 𝟏𝟎

Non-Linear Data Structure (Tree Part-1) 14


Venn Diagram

𝑽𝟎
V
𝑽𝟏 𝑽𝟕 V
0
V
1 7
V V V
𝑽𝟐 𝑽𝟑 𝑽𝟒 𝑽𝟖 𝑽𝟗 2 3 9
V V1
5 0
V
𝑽𝟓 𝑽𝟔 𝑽 𝟏𝟎 V 4
6
V
8

Non-Linear Data Structure (Tree Part-1) 15


Nesting of Parenthesis
Like a table Content of Book
𝑽𝟎 V0
V1
𝑽𝟏 𝑽𝟕 V2
V5
V6
𝑽𝟐 𝑽𝟑 𝑽𝟒 𝑽𝟖 𝑽𝟗 V3
V4

𝑽𝟓 𝑽𝟔 𝑽 𝟏𝟎 V7
V8
V9
V10

(V0 (V1 (V2(V5)(V6) ) (V3) (V4) ) (V7 (V8)(V9 (V10) ) ) )


Nesting of Parenthesis
Non-Linear Data Structure (Tree Part-1) 16
Level Format

𝑽𝟎 1V0
2V1
𝑽𝟏 𝑽𝟕 3V2
4V5
4V6
𝑽𝟐 𝑽𝟑 𝑽𝟒 𝑽𝟖 𝑽𝟗 3V3
3V4
𝑽𝟓 𝑽𝟔 𝑽 𝟏𝟎 2V7
3V8
3V9
4V10

Non-Linear Data Structure (Tree Part-1) 17


Tree– Concepts & Definitions
 The node that is reachable from a node is called descendant of a node.
 The nodes which are reachable from a node through a single edge are
called the children of node.
 M-ary Tree
 If in a directed tree the out degree of every node is less than or equal to m then tree
is called an m-ary tree.
 Full or Complete M-ary Tree
 If the out degree of each and every node is exactly equal to m or 0 and their
number of nodes at level i is m(i-1) then the tree is called a full or complete m-ary tree.
 Positional M-ary Tree
 If we consider m-ary trees in which the m children of any node are assumed to have m
distinct positions, if such positions are taken into account, then tree is called positional m-
ary tree.
Non-Linear Data Structure (Tree Part-1) 18
Tree– Concepts & Definitions
 Height of the tree
 The height of a tree is the length of the path from the root to the deepest node in the
tree.
 Binary Tree
 If in a directed tree the out degree of every node is less than or equal to 2 then
tree is called binary tree.
 Strictly Binary Tree
 A strictly binary tree (sometimes proper binary tree or 2-tree or full binary tree) is a
tree in which every node other than the leaves has two children.
 Complete Binary Tree
 If the out degree of each and every node is exactly equal to 2 or 0 and their
number of nodes at level i is 2(i-1) then the tree is called a full or complete
binary tree.
Non-Linear Data Structure (Tree Part-1) 19
Tree– Concepts & Definitions
 Sibling
 Siblings are nodes that share the same parent node

 Positional m-ary Tree


 If we consider m-ary trees in which the m children of any node are assumed to
have m distinct positions, if such positions are taken into account, then tree is
called positional m-ary tree

0 1 0 1 0 1

0 0 1 0 0 1 1 0 0 1
0 1 1 0 1 1 1 0 1 0

(a) Binary tree (b) Complete binary tree (c)

Non-Linear Data Structure (Tree Part-1) 20


Convert any tree to Binary Tree
 Every Tree can be Uniquely represented by binary tree
 Let’s have an example to convert given tree into binary tree
a
a
a
b

b f b f
c f

g
d
c d g j k c d g j k
h j
e

e h i e h i i k

Non-Linear Data Structure (Tree Part-1) 21


Convert Forest to Binary Tree

a g
a

b c
h i
b g

d e f
j k l
d c h

a g
e j i

b c h i
f k l

d e f j k l

Non-Linear Data Structure (Tree Part-1) 22


Thank
You

You might also like