C++、哈夫曼编码

哈夫曼编码在信息论中学过,

编码步骤:

  1. 将符号按概率从大到小排列
  2. 给概率最小的两个,分配码位“0”,“1”,将这两个符号合并(概率合并),形成新的符号集。任意指定0和1,所以哈夫曼编码并不唯一.
  3. 重复1-2,当信源剩下两个符号时停止,从后往前写编码(可分离的异前置码)。

在C+中,哈夫曼用于压缩文件,例如ABCDE这些符号。

实现代码:http://www.cnblogs.com/gyk666/p/6851821.html

猜你喜欢

转载自www.cnblogs.com/lu82368236/p/9780165.html