版权声明: 本文由 一只博客 发表于 bloghome博客
文章连接: https://www.bloghome.com.cn/user/cnn237111算法
哈夫曼编码取决于哈夫曼树。app
将要压缩的字符串,将每一个字出现的频率做为依据,构造一颗哈夫曼树,频率越大的字越是靠近树的根结点,所以它的编码也就越短。所以,频率高的字用短码,频率低的字用长码。根据这样的码表能够实现压缩字符串了。ide
本程序采用C#实现。编码
基本上是演示了哈夫曼编码压缩的原理。因为是演示代码,所以没必要太纠结与效率。本程序效率一定不高。加密
根据码表组成的二进制码,按照7位一组转成ASCII码(采用的ASCII码为7位,0-127),而且有一个标志头指示是否有多余的尾码。具体看代码实现。spa
本程序也能够稍加改编,成为字符串加密算法。orm
效果图以下:blog