二哥啊

导航

 

1.给定n个权值作为n个叶子结点,构造一棵二叉树,若该树的带权路径长度

  wpl达到最小,这样的二叉树称为最优二叉树,也称哈夫曼树

2.赫夫曼树是带权路径长度最短的树,权值较大的结点离根较劲

 

结点的带权路径长度:从根结点到该结点之间的路径长度与该结点的权的乘积

树的带权路径长度:所有叶子结点的带权路径长度之和 wpl

 

如何构建赫夫曼树

  1.排序 升序

  2.取处根节点权值最小的两颗二叉树

  3.组成一颗新的二叉树,该新的二叉树的根节点权值是前面两颗二叉树根节点权值的和

  4. 再将这颗新的二叉树,以根结点的权值大小再次排序,不断重复1-2-3-4的步骤,直到数列中所有数据都被处理   

 

heffman编码

根据heffman树,给各个字符编码,向左的路径为0,向右为1

posted on 2020-03-03 16:04  二哥啊  阅读(118)  评论(0编辑  收藏  举报