码迷,mamicode.com
首页 > 其他好文 > 详细

《大话数据结构》笔记(6-3)--树:赫夫曼树

时间:2017-05-20 11:12:55      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:结构   strong   代码实现   data   路径   其他   构造   数据   ima   

代码实现:
 
 
第六章    树:赫夫曼树
赫夫曼树定义与原理
从树中一个结点到另一个结点之间的分支构成两个结点之间的路径,路径上的分支数目称作路径长度
树的路径长度就是从树根到每一结点的路径长度之和。
 
对于带权的结点,结点的带权路径长度为从该结点到树根之间的路径长度与结点上权的乘积。
树的带权路径长度为树中所有叶子结点的带权路径长度之和。
 
假设有n个权值{w1, w2, ..., wn},构造一棵有n个叶子结点的二叉树,每个叶子结点带权wk ,每个叶子的路径长度为lk,则其中带权路径长度WPL最小的二叉树称作赫夫曼树(最有二叉树)。

 
赫夫曼树的构造
技术分享
 
 
赫夫曼编码
若要设计长短不等的编码,则必须是任一字符的编码都不是其他编码的前缀,这种编码称作前缀编码
 
技术分享
 

《大话数据结构》笔记(6-3)--树:赫夫曼树

标签:结构   strong   代码实现   data   路径   其他   构造   数据   ima   

原文地址:http://www.cnblogs.com/lyu0709/p/6881527.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!