首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

huffman编码-zoj_1117

2014-07-21 
huffman编码---zoj_1117huffman编码是一种优化的编码方法,于ASCII等固定长度的编码方法相比较,他可以使编

huffman编码---zoj_1117

huffman编码是一种优化的编码方法,于ASCII等固定长度的编码方法相比较,他可以使编码的长度缩短。其主要的思路是,让出现频率高的字符拥有较短的编码,让出现频率较低的字符,拥有较长的编码。但是,这样的编码方式就要求任意一个字符的编码不能是其他字符编码的前缀,通常这种编码方式叫前缀编码。
???????? huffman编码通过构造huffmanTree来实现,贪心思想。取权值(频率)最低的2个节点为新节点的左右子节点,新节点的权值为子节点权值之和。处理之后,子节点标记为已经处理过,新节点标记为未处理。循环处理该过程。如果huffmanTree中有m个叶节点,那么huffmanTree中肯定有n=2*m-1个节点。因此,当huffmanTree中有2*m-1个节点时,huffmanTree构造就结束了。

?

热点排行