Huffman Coding
Huffman Coding
Prefix Rule-
Huffman Tree-
Step-01:
Step-02:
Step-03:
Considering the first two nodes having minimum frequency,
Create a new internal node.
The frequency of this new node is the sum of frequency of those two nodes.
Make the first node as a left child and the other node as a right child of the newly created
node.
Step-04:
Keep repeating Step-02 and Step-03 until all the nodes form a single tree.
The tree finally obtained is the desired Huffman Tree.
Time Complexity-
Important Formulas-
The following 2 formulas are important to solve the problems based on Huffman Coding-
Formula-01:
Formula-02:
Characters Frequencies
a 10
e 15
i 12
o 3
u 4
s 13
t 1
Solution-
Step-01:
Step-02:
Step-03:
Step-04:
Step-05:
Step-06:
Step-07:
Now,
We assign weight to all the edges of the constructed Huffman Tree.
Let us assign weight ‘0’ to the left edges and weight ‘1’ to the right edges.
Rule
If you assign weight ‘0’ to the left edges, then assign weight ‘1’ to the right
edges.
If you assign weight ‘1’ to the left edges, then assign weight ‘0’ to the right
edges.
Any of the above two conventions may be followed.
But follow the same convention at the time of decoding that is adopted at
the time of encoding.
After assigning weight to all the edges, the modified Huffman Tree is-
Now, let us answer each part of the given problem one by one-
To write Huffman Code for any character, traverse the Huffman Tree from root node to the leaf
node of that character.
Following this rule, the Huffman Code for each character is-
a = 111
e = 10
i = 00
o = 11001
u = 1101
s = 01
t = 11000
Article Name
Huffman Coding | Huffman Coding Example | Time Complexity
Description
Huffman Coding or Huffman Encoding is a Greedy Algorithm that is used for the lossless
compression of data. Huffman Coding Example and Time Complexity. Huffman Tree
Construction Steps.
Author
Akshay Singhal
Publisher Name
Gate Vidyalay
Publisher Logo