如,哈夫曼树中的0和1是什么意思啊?谢谢~
就是在数据通信传输过程中,传输的是二进制字符串,用0,1码的不同排列来表示字符。默认左边为0 右边为1,这样最下面的0.06这个权值的字符表示01010; 0.04这个权值的字符表示01011。
例如
需传送的报文为“AFTER DATA EAR ARE ART AREA”,这里用到的字符集为“A,E,R,T,F,D”,各字母出现的次数为{8,4,5,3,1,1}。现要求为这些字母设计编码。要区别6个字母,最简单的二进制编码方式是等长编码,固定采用3位二进制,可分别用000、001、010、011、100、101对“A,E,R,T,F,D”进行编码发送,当对方接收报文时再按照三位一分进行译码。显然编码的长度取决报文中不同字符的个数。在实际应用中,各个字符的出现频度或使用次数是不相同的,如A、B、C的使用频率远远高于X、Y、Z,自然会想到设计编码时,让使用频率高的用短码,使用频率低的用长码,以优化整个报文编码。
所以我们构造哈夫曼数,显然字使用频率越小权值越小,权值越小叶子就越靠下,于是频率小编码长,频率高编码短。
简单的说就是为了编码需要,这里写出来好表示,其实可以不用写。
鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com
图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!