Skip to content
Related Articles

Related Articles

Handshaking Lemma and Interesting Tree Properties
  • Difficulty Level : Medium
  • Last Updated : 13 Jun, 2020

What is Handshaking Lemma?
Handshaking lemma is about undirected graph. In every finite undirected graph, an even number of vertices will always have odd degree The handshaking lemma is a consequence of the degree sum formula (also sometimes called the handshaking lemma)
 \sum_{u \epsilon v} deg(v) = 2\left  | E \right |

How is Handshaking Lemma useful in Tree Data structure?
Following are some interesting facts that can be proved using Handshaking lemma.

1) In a k-ary tree where every node has either 0 or k children, following property is always true.

  L = (k - 1)*I + 1
Where L = Number of leaf nodes
      I = Number of internal nodes  

Proof:
Proof can be divided in two cases.

Case 1 (Root is Leaf):There is only one node in tree. The above formula is true for single node as L = 1, I = 0.



Case 2 (Root is Internal Node): For trees with more than 1 nodes, root is always internal node. The above formula can be proved using Handshaking Lemma for this case. A tree is an undirected acyclic graph.

Total number of edges in Tree is number of nodes minus 1, i.e., |E| = L + I – 1.

All internal nodes except root in the given type of tree have degree k + 1. Root has degree k. All leaves have degree 1. Applying the Handshaking lemma to such trees, we get following relation.

  Sum of all degrees  = 2 * (Sum of Edges)

  Sum of degrees of leaves + 
  Sum of degrees for Internal Node except root + 
  Root's degree = 2 * (No. of nodes - 1)

  Putting values of above terms,   
  L + (I-1)*(k+1) + k = 2 * (L + I - 1) 
  L + k*I - k + I -1 + k = 2*L  + 2I - 2
  L + K*I + I - 1 = 2*L + 2*I - 2
  K*I + 1 - I = L
  (K-1)*I + 1 = L   

So the above property is proved using Handshaking Lemma, let us discuss one more interesting property.

Alternate Proof: (Without using Handshaking Theorem)
Since there are I internal nodes, each having K children, therefore total children in the tree = K * I.

There are I-1 internal nodes which are children of some other node (root has been excluded hence one less than the total number of internal nodes)

That is, out of these K*I children, I-1 are internal nodes and therefore the rest (K*I – (I-1)) are leaves.

Hence L = (K-1)*I + 1.
 
 
 
2) In Binary tree, 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:
Let number of nodes with 2 children be T. Proof can be divided in three cases.

 
Case 1: There is only one node, the relationship holds
as T = 0, L = 1.

 
Case 2: Root has two children, i.e., degree of root is 2.

   Sum of degrees of nodes with two children except root + 
   Sum of degrees of nodes with one child + 
   Sum of degrees of leaves + Root's degree = 2 * (No. of Nodes - 1)   

   Putting values of above terms,
   (T-1)*3 + S*2 + L + 2 = (S + T + L - 1)*2

   Cancelling 2S from both sides.
     (T-1)*3 + L + 2 = (T + L - 1)*2
     T - 1 = L - 2
     T = L - 1 

 
Case 3: Root has one child, i.e., degree of root is 1.

   Sum of degrees of nodes with two children + 
   Sum of degrees of nodes with one child except root + 
   Sum of degrees of leaves + Root's degree = 2 * (No. of Nodes - 1)   

   Putting values of above terms,
   T*3 + (S-1)*2 + L + 1 = (S + T + L - 1)*2

   Cancelling 2S from both sides.
     3*T + L -1 = 2*T + 2*L - 2
     T - 1 = L - 2
     T = L - 1 

Therefore, in all three cases, we get T = L-1.

We have discussed proof of two important properties of Trees using Handshaking Lemma. Many GATE questions have been asked on these properties, following are few links.

GATE-CS-2015 (Set 3) | Question 35
GATE-CS-2015 (Set 2) | Question 20
GATE-CS-2005 | Question 36
GATE-CS-2002 | Question 34
GATE-CS-2007 | Question 43

Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above

My Personal Notes arrow_drop_up
Recommended Articles
Page :