哈夫曼树与哈夫曼编码(前缀编码)理解 | 您所在的位置:网站首页 › 前缀be什么意思啊 › 哈夫曼树与哈夫曼编码(前缀编码)理解 |
一、哈夫曼树定义及用途
哈夫曼树又称最优二叉树,是带权路径长度(WPL)最短的树,可以构造最优编码,用于数据传输,数据压缩等方向 下面是二叉树和哈夫曼树 哈夫曼最大的目的是为了解决当你远距离通信(电报)的数据传输的最优化问题 比如文字内容”ABCDEF”,通过二进制数据表示 传输数据为:“000001010011100101”按照3位一分来译码即可,但可以想象假如文字多了,数据量也是相当的大,而且某写字出现的频率都是不同的“中文的,了,….”频率大 所以需要前缀编码来进行编码(哈夫曼思想)前缀编码:设计长短不等的编码,必须是任一字符的编码都不是另一个字符编码的前缀,这种编码称为前缀编码 因为每个字母的出现频率是不同的,我们假设给每个字母分配权值:A:27,B:8,C:15,D:15,E:30,F:5,首先按照它们的权值进行构造哈夫曼树 下面是通过哈夫曼编码得到,可以看出,频率高的字符数据变的少,这样如果在很多字符下,会大大减少存储率和传输成本 原编码二进制串:000001010011100101新编码二进制串:01100110100111000 |
CopyRight 2018-2019 实验室设备网 版权所有 |