霍夫曼树与霍夫曼编码

来源:互联网 发布:网络运维平台 编辑:程序博客网 时间:2024/06/18 09:16
HUFFMAN树的定义:

给定n个权值作为n个叶子结点,构造一棵二叉树,若带权路径长度(WPL)达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼树(Huffman tree)。

wpl的计算:如图:

二叉树a的wpl = 5*1+15*2+40*3+30*4+10*4=315

二叉树b的wpl = 5*3+15*3+40*2+30*2+10*2=220

哈弗曼树:

 

wpl = 5*4+15*3+40*1+30*2+10*4=205

霍夫曼树的构造:

 

 

霍夫曼编码:下图中,左图为霍夫曼树的过程的权值表示,右图为将权值改为0,1后的树。这样每个字母用经过路径的0,1来编码,即可以得到霍夫曼编码。

 

原创粉丝点击