哈夫曼树和哈夫曼编码 – 被罚站的树

      当树做成某事包装材料被分派一表现一种平均值的数值时,我们的称之为包装材料的兴趣。从树的根包装材料到任性包装材料的路程长(因的边数)与该包装材料上权值的产品称为该包装材料的带权路程长。树中尽量的页包装材料的额外的路程长积和称为T。。额外的路程长最小的两叉树称为胡。,也译成最好的两叉树。

     如次图所示,有三个开除和两个分叉的树。,每棵树有4页包装材料A,b,c,d,右7,5,2,4。额外的路程的长为

(a) WPL = 7×2+5×2+2×2+4×2=36

(b) WPL = 2X1+4X2+7X3+5X3 = 46

(c) WPL = 7×1+5×2+2×3+4×3 = 35

image

结果包装材料以C的方法发布,WPL可以取最小的(显示出),我们的叫Huffman tree。

Huffman tree安排


当结构Huffman tree时,它选择两个具有最小重任的包装材料。,每回结构走完后产品一新的包装材料。,从替换包装材料切断已体系包装材料并添加新遗传因子。新的包装材料权值是T中所触及的两个包装材料的重任积和。。样板如次:

image

  • 另一包装材料是,b,c,d,重任区别为7。,5,2,4
  • 为扩大选择C和D(最小分量),产品E(重任为6)的新包装材料,替换包装材料成了英雄7,5,6
  • 破土中选择B和E,产品一新的包装材料F(重任为11),替换包装材料是7。,11
  • 至死7和11包装材料的结构,至死,如图所示,产品了Hoffman tree。

Huffman tree的敷


     处置字母串序列时,结果每个字母串应用完全相同的事物的一点,,它高水平固定的长编码。。结果容许确切的的刻用不相等的一点表现,这种方法称为可变因素长编码。。可变因素长编码的独特的是对刻举行短编码。,由于应用频率低的刻,长编码的方法是。因而,我们的可以缩减通知的仓库面积。,因而,通知压缩的比分。而经过哈夫曼树身材的哈夫曼编码是一种的无效的通知压缩编码。

     结果缺乏编码是另一编码前缀,这事指定遗传密码叫做前缀编码。。如0,101和100是前缀编码。由前缀码身材的序列可以超绝地身材字母串序列。。结果00101100但是辨析为0,0,101和100。

示例:

我们的显示证据,A f的频率是A:45的字母串。,b:13,c:12,d:16,e:9,f:5,我们的对该字母串举行采取哈夫曼编码举行蓄电。

image

WPL = 1×45+3x(13+12+16)+4x(5+9)=224

经过这种方法,我们的可以应用224一点来蓄电字母串。,由于霍夫曼指定遗传密码是前缀指定遗传密码,因而,但是回复原始刻序列。。结果我们的应用每个刻的3位来蓄电(反正3位),当时的必要300位来蓄电字母串。