哈夫曼编码是如何达到压缩的?

1.基本概念

应该搞清三个概念:哈夫曼树哈夫曼编码哈夫曼压缩

具体请看下图
a)哈夫曼树
在这里插入图片描述
b)哈夫曼树的构造过程和哈夫曼编码

在这里插入图片描述
c)哈夫曼压缩
在这里插入图片描述
解释:哈夫曼编码是怎么达到压缩的?

如上图所示,把结点权值看作结点出现的次数。字符a出现45次,字符b出现13次,字符c出现12次,字符d出现16次,字符e出现9次,字符f出现5次。
对abcdef六个字符编码,如果采用等长编码,至少一个字符需要3位。这样对这么多字符编码就需要3*(45+13+12+16+9+5)=300位。而采用如图所示的哈夫曼编码就只需要224位。压缩了25%的数据。

おすすめ

転載: blog.csdn.net/t18438605018/article/details/119899799