Related Articles
Difference between graph and tree
• Difficulty Level : Easy
• Last Updated : 01 Jan, 2019

A graph is collection of two sets V and E where V is a finite non-empty set of vertices and E is a finite non-empty set of edges.

• Vertices are nothing but the nodes in the graph.
• Two adjacent vertices are joined by edges.
• Any graph is denoted as G = {V, E}.

For Example:

G = {{V1, V2, V3, V4, V5, V6}, {E1, E2, E3, E4, E5, E6, E7}}

Tree :

A tree is a finite set of one or more nodes such that –

1. There is a specially designated node called root.
2. The remaining nodes are partitioned into n>=0 disjoint sets T1, T2, T3, …, Tn
where T1, T2, T3, …, Tn is called the subtrees of the root.

The concept of tree is represented by following Fig.

#### Graph vs Tree

No.GraphTree
1Graph is a non-linear data structure.Tree is a non-linear data structure.
2It is a collection of vertices/nodes and edges.It is a collection of nodes and edges.
3Each node can have any number of edges.General trees consist of the nodes having any number of child nodes. But in case of binary trees every node can have at the most two child nodes.
4There is no unique node called root in graph.There is a unique node called root in trees.
5A cycle can be formed.There will not be any cycle.
6Applications: For finding shortest path in networking graph is used.Applications: For game trees, decision trees, the tree is used.

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.  To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.

In case you wish to attend live classes with industry experts, please refer DSA Live Classes

My Personal Notes arrow_drop_up