首页 > 编程知识 正文

将哈夫曼编码推广至三进制编码,哈夫曼编码转换成二进制存储

时间:2023-05-04 08:14:51 阅读:257983 作者:1472

哈夫曼编码优于二进制编码案例:
假设用于通信的电文仅由8个字母组成,字母在电文中出现的频率分别为0.07,0.19,0.02,0.06,0.32,0.03,0.21,0.10。试为这8个字母设计哈夫曼编码。使用0~7的二进制表示形式是另一种编码方案。对于上述实例,比较两种方案的优缺点。

解:
先将概率放大100倍,以方便构造哈夫曼树。
w={7,19,2,6,32,3,21,10},
按哈夫曼规则建立哈夫曼树如图:

方案一(哈夫曼编码):

方案二(二进制编码):

方案一带权路径长度计算如下:
WPL=2*(0.19+0.32+0.21)+4*(0.07+0.06+0.10)+5*(0.02+0.03)=2.61
方案二带权路径长度计算如下:
WPL=3*(0.07+0.19+0.02+0.06+0.32+0.03+0.21+0.10)=3
结论:本案例哈夫曼编码优于等长二进制编码。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。