哈夫曼树与哈夫曼编码

124 阅读1分钟
节点的路径长度

从根节点到该节点的路径上的分支数目

节点的带权路径长度

节点的域(层数)×节点的路径长度

树的带权路径长度

树中所有叶子节点的带权路径长度之和

最优二叉树(哈夫曼树)

所有含n个叶子节点、并带相同权值的二叉树中,必存在一棵带权路径长度最小的二叉树,这棵二叉树就是哈夫曼树。

构造最优二叉树的思想

1 3 5 8 10,这五个元素构成的如下这棵树就是哈夫曼树。

     27
 10     17
     8      9
         4     5
       1   3
哈夫曼编码:左0右1

左子树上都是0码,右子树上都是1码。然后寻找叶子节点时就可以按码往后捋一捋。 如上面这个树寻路:1就是:1100 3就是:1101