Huffman Coding
Lossless data compression using variable-length codes based on frequency.
Tree ConstructionReady
Priority Queue (Min-Heap)
Empty or Finished
Status: Ready
Speed
1function huffman(text):
2 count frequencies
3 pq = createLeafNodes(freqs)
4
5 while pq.size > 1:
6 left = pq.popMin()
7 right = pq.popMin()
8 newNode = Node(freq: left + right)
9 newNode.left = left
10 newNode.right = right
11 pq.push(newNode)
12
13 return pq.pop() // Root
| Char | Freq | Code |
|---|