哈夫曼树

1. 首先要知道扩充二叉树的概念

扩充二叉树:在原有的二叉树上面,添加叶节点;使原有的节点都变成度数为2的分支节点;这样得到的树就是扩充二叉树

扩充二叉树中;所有新增的节点就是外部节点;原有的节点就称为内部节点;由于前面的公式:叶节点的数量 n1 = 分支节点数量 n2 + 1 ,我们可知道对于扩充二叉树来说,就是外部节点 = 内部节点 + 1

外部路径长度E:是树根到每一个外部节点的路径长度之和。

内外路径长度公式:E = I + 2xn  ;n表示内部节点。

2. 带权扩充二叉树的路径长度

每个叶节点都给一个数值;就如下图一样计算这种 带权扩充二叉树的路径长度

3. 所谓的哈夫曼树就是使 上面的带权扩充二叉树的路径长度降到最小的二叉树的构造方式。

4. 哈夫曼树的构造算法(心里默念:把每个叶节点按照权值的大小,先把最小的两个叶节点构成一个父节点是他们之和的小二叉树,在以父节点为新的“叶节点” 参与后续大小的比较;继续这样构成新的二叉树。)

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值