树之哈夫曼(Huffman)树

1. 概念

   实际生活中,树中结点常常表示某种意义的数值,称为该结点的权值。从根结点到任意结点的路径长度(经过的边数)与该结点上权值的乘积称为该结点的带权路径长度。树中所有叶结点的带权路径长度之和称为该树的带权路径长度,记为
     WPL = Wi*Li(i=1,2……,n)
带权路径长度(WPL)最小的二叉树称为哈夫曼树,也称最优二叉树。

2. 哈夫曼树的构造

用个实例说明一下。A(5),B(24),C(7),D(17),E(34),F(5),G(13)

取结点集合里,权值最小的2个数,构成二叉树。再合并值加入集合。重复上述步骤,直至结点集合中的结点消耗光。

3. 哈夫曼编码

   上面使用编码表示字符串序列,可以对数据进行极大的压缩,利用哈夫曼树可以设计出总长度最短的二进制的前缀编码。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值