个性化阅读
专注于IT技术分析

霍夫曼编码算法详细实现

Huffman (C)
1. n=|C|
2. Q ← C
3. for i=1 to n-1
4. do
5. z= allocate-Node ()
6. x=  left[z]=Extract-Min(Q)
7. y= right[z] =Extract-Min(Q)
8. f [z]=f[x]+f[y]
9. Insert (Q, z)
10. return Extract-Min (Q)

示例:为以下一组频率找到最佳霍夫曼码:

a: 50	b: 25	c: 15	d: 40	e: 75

解:

霍夫曼编码算法

霍夫曼编码算法

再次对于i = 2

霍夫曼编码算法
霍夫曼编码算法
霍夫曼编码算法

同样, 我们采用相同的过程

霍夫曼编码算法
霍夫曼编码算法

因此, 最终输出为:

霍夫曼编码算法
赞(0)
未经允许不得转载:srcmini » 霍夫曼编码算法详细实现

评论 抢沙发

评论前必须登录!