本月博客排行
-
第1名
wy_19921005 -
第2名
mft8899 -
第3名
java-007 - benladeng5225
- Anmin
年度博客排行
-
第1名
龙儿筝 -
第2名
宏天软件 -
第3名
benladeng5225 - wy_19921005
- vipbooks
- kaizi1992
- 青否云后端云
- e_e
- tanling8334
- sam123456gz
- arpenker
- zysnba
- fantaxy025025
- xiangjie88
- wallimn
- lemonhandsome
- ganxueyun
- jh108020
- Xeden
- xyuma
- zhanjia
- wangchen.ily
- johnsmith9th
- zxq_2017
- forestqqqq
- jbosscn
- daizj
- xpenxpen
- 喧嚣求静
- kingwell.leng
- lchb139128
- kristy_yy
- jveqi
- javashop
- lzyfn123
- sunj
- yeluowuhen
- ajinn
- lerf
- silverend
- chenqisdfx
- xiaoxinye
- flashsing123
- bosschen
- lyndon.lin
- zhangjijun
- sunnylocus
- lyj86
- paulwong
- sgqt
最新文章列表
数据结构-哈夫曼树
哈夫曼树:最优树,带权路径长度最短的树
概念:路径:从树中一个节点到另外一个节点之间的分支构成连个节点之间的路径,如上图:R到D之间的路径为2,R到H之间路径为3路径长度:路径上分支的数目树的路径长度:从树根到每一个节点的路径长度之和比如R到A,B,C,D,E,F,G,H,K路径长度之和18树的带权路径长度:树中所有叶子节点的带权路径路径长度之和:WPL=∑_(k-1)^n▒WkLk 其中Wk为 ...
构造哈夫曼树
1.算法说明
就是建造哈夫曼树树,从而使得构造出的树带权路径长度最小
2.步骤
输入叶子结点个数n;
创建长度为2*n-1的数组并初始化;
while(i<n) 循环输入n个叶子结点的权值;
while(n-1次循环建立树){
在parent==-1的元素中查找权最小的两个结点;
合并两个叶子结点,并加入新结点到数组;
}
3.代码
//构造h ...