构建Huffman Tree来压缩数据

2016-06-28
喝牛奶的鸵鸟

Huffman Tree的主要应用在数据压缩和通信等方面,权重高(出现次数多)的字符靠近根节点,权重低的字符远离根节点,这样编码为可变字长。

Huffman

代码:

运行:

Huffman1 Huffman2 如果文件中存在大量重复的字符效果很明显,由于Python运行效率低,所以压缩1M左右的文件作为演示,要想压缩大文件那慢的不得了,不过构建Huffman树还是很快的,这不是问题完全可以用C重写,方法是一样的。