树-堆结构练习——合并果子之哈夫曼树
Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^
题目描述
在一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。多多决定把所有的果子合成一堆。
每一次合并,多多可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和。可以看出,...
分类:
其他好文 时间:
2014-08-29 13:06:57
阅读次数:
203
作为哈夫曼树的一个重要应用,我们来介绍哈夫曼编码。在我的上一篇博文《树之哈夫曼树》中已经介绍了建立哈夫曼树的过程,而由哈夫曼树求得的编码为最优前缀码。每个叶子表示的字符的编码,就是从根到叶子的路径上的标号依次相连所形成的编码,显然这就是该字符的最优前缀码。所谓前缀码是指,对字符集进行编码时,要求字符集中任一字符的编码都不是其它字符的编码的前缀,比如常见的等长编码就是前缀码。所谓最优前缀码是指,平均...
分类:
其他好文 时间:
2014-08-23 16:55:01
阅读次数:
746
优先队列实现完整哈夫曼树,一大段英文都是介绍哈夫曼树的。
外面用了一个pre来找parent,其实可以把这个项放入结构体中。
特别注意当有一个结点的情况不能用优先队列,另外判断下
#include
#include
#include
#include
#include
#include
using namespace std;
#define maxn 256
s...
分类:
其他好文 时间:
2014-08-18 14:36:12
阅读次数:
198
一、定义 一些定义: 节点之间的路径长度:在树中从一个结点到另一个结点所经历的分支,构成了这两个结点间的路径上的经过的分支数称为它的路径长度 树的路径长度:从树的根节点到树中每一结点的路径长度之和。在结点数目相同的二叉树中,完全二叉树的路径长度最短。 结点的权:在一些应用中,赋予树中结点的一个有某种意义的实数。 结点的带权路径长度:结点到树根之间的路径长度与该结点...
分类:
编程语言 时间:
2014-08-18 12:37:54
阅读次数:
249
题目地址:POJ 3253
哈夫曼树的结构就是一个二叉树,每一个父节点都是两个子节点的和。这个题就是可以从子节点向根节点推。
每次选择两个最小的进行合并。将合并后的值继续加进优先队列中。直至还剩下一个元素为止。
代码如下:
#include
#include
#include
#include
#include
#include
#include
#include
#inc...
分类:
其他好文 时间:
2014-08-04 11:07:39
阅读次数:
269
typedef struct{
int wiget;
int lchild,rchild,parent;
int data;
}HNode,*HTree;
void select(HTree &H,int i,int &s1,int &s2){
int tmp,min1,min2=0;
...
分类:
其他好文 时间:
2014-07-27 11:11:52
阅读次数:
208
Fence RepairTime Limit: 2000 MS Memory Limit: 65536 KB64-bit integer IO format: %I64d , %I64u Java class name: Main[Submit] [Status] [Discuss]Descript...
分类:
其他好文 时间:
2014-07-19 00:20:15
阅读次数:
183
一、 什么是哈夫曼树
是一种带权路径长度最短的二叉树,也称最优二叉树
带权路径长度:WPL=(W1*L1+W2*L2+W3*L3+...+ Wn*Ln)
N个权值Wi(i=1,2,...n)构成一棵有N个叶结点的二叉树,相应的叶结点的路径长度为Li(i=1,2,...n)。
二、 建立哈夫曼树
已知的一组叶子的权值w1,w2,w3……wn;
①首先把 n 个...
分类:
其他好文 时间:
2014-07-16 09:01:13
阅读次数:
327
哈夫曼树
给定n个权值作为n个叶子结点,构造一棵二叉树,若带权路径长度达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼树(Huffman tree)。哈夫曼树是带权路径长度最短的树,权值较大的结点离根较近。节点的带权长度是这样定义的:节点的权值*根节点到该节点的路径长度。树的带权路径长度(Weighted Path Length of Tree,简记为WPL)则是指所有节点的带权长度和。哈夫曼树就是使WPL最小的一种树,并且哈夫曼树是满二叉树。它的构造方法是哈夫曼方法。哈夫曼树是这样构造的:...
分类:
其他好文 时间:
2014-07-12 19:49:04
阅读次数:
252