本文目录一览

1,怎样构造霍夫曼树

霍夫曼编码指的是不等长前缀编码的带权最短编码,利用构造霍夫曼二叉树来实现。前缀编码的意思任一个编码都不是另一个的前缀。这里把满足这样性质的编码称为前缀码。取最小概率两个数做叶子,父亲节点为两叶子概率之和,将父亲节点与其他节点比较大小,仍旧用最小两个概率做叶子,重复上面的过程(就是将父亲节点当成一个新数来看取代它的2个孩子节点,参与构造)。霍夫曼数的构造思想:就是典型的贪心算法。举例构造可以参考http://zhidao.baidu.com/question/97252092.html?si=3

怎样构造霍夫曼树

2,哈夫曼树的构造提问

哈夫曼树构造时选择两个权值最小的点构造树,树的根植权值为左右子树权值和。首先选择 2 3 构造权值为5的树,序列变为 5 7 8 5 / \2 3然后选择 5 7构造树,序列为8 12 12 / \5 7选择 8 12 20 / \ 8 12哈夫曼树为: 20 / \ 8 12 / \ 5 7 / \ 2 3WPL = 2*3 + 3*3 + 7*2 + 8*1 = 37

哈夫曼树的构造提问

3,构造哈夫曼树 怎么构造呢

楼主 你的分我要了 , 前面的都不对, 用的平板uc传不了图片,一会回寝室发给你 先给你说哈夫曼的目的,就是让带权路径的长度最小。
我做的,看看吧
字符版 复制到记事本里看 ********o********** *******/*\********* *****o*****o******* ****/*\***/*\****** ***23*3**o**11**** *********/*\******* ********o***o****** *******/*\*/*\***** *******o*7*8*14**** ******/*\********** ******5*29**********

构造哈夫曼树 怎么构造呢

4,5 10 12 15 30 40构造哈夫曼树

112 / \ 42 70 / \ / \ 15 27 30 40 / \ 12 15 /\ 5 10很好做的!!!
哈夫曼树见图。用word随便画的,比较难看。带权路径长度 (2+3)*3+(5+7+9)*2+12*1=15+42+12=69其实你可以根据下面的直接求。哈夫曼树的构造假设有n个权值,则构造出的哈夫曼树有n个叶子结点。 n个权值分别设为 w1、w2、…、wn,则哈夫曼树的构造规则为:(1) 将w1、w2、…,wn看成是有n 棵树的森林(每棵树仅有一个结点);(2) 在森林中选出两个根结点的权值最小的树合并,作为一棵新树的左、右子树,且新树的根结点权值为其左、右子树根结点权值之和;(3)从森林中删除选取的两棵树,并将新树加入森林;(4)重复(2)、(3)步,直到森林中只剩一棵树为止,该树即为所求得的哈夫曼树

5,哈夫曼树的构建过程

哈夫曼树:给定n个权值作为n个叶子结点,构造一棵二叉树,若带权路径长度达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼树(Huffman tree)。哈夫曼树是带权路径长度最短的树,权值较大的结点离根较近。哈夫曼树的构造:假设给定的权值如下:3,5,7,8,10,15;首先取集合中最小的两个数:3+5=8,再删除集合中3和5的值,把8放入原集合,原集合变成:7,8,8,10,15; 8 / \ 3 5再从7,8,8,10,15中再取2个最小的数构成一个树 15 / \ 8 7 / \ 3 5再从8,10,15,15中再取2个最小的数构成一个树: 18 / \ 8 10再从15,15,18中取两个最小数:15,15,构成树: 30 / \ 15 15 / \ 8 7 / \ 3 5最后把18,30构成树(此时集合中已经没元素了,就形成了哈夫曼树): 48 / \ 30 18 / \ / \ 15 15 8 10 / \ 8 7 / \ 3 5希望你能看懂!!

6,有关构造哈夫曼树的问题

1. 根据给定的n个权值{w1,w2,…wn}构成n棵二叉树的集合F={T1,T2,..,Tn},其中每棵二叉树Ti中只有一个带权wi的根结点,左右子树均空。 2. 在F中选择两棵根结点权值最小的树作为左右子树构造一棵新的二叉树,且置新的二叉树的根结点的权值为其左右子树上根结点的权值之和。 3. 在F中删除这两棵树,并将新的二叉树加入F中。 4. 重复前两步(2和3),直到F中只含有一棵树为止。该树即为哈夫曼树 帮你贴过来了,百度百科 这东西实际用法是可以减少树的访问次数,因为他把频率高的点放在比较靠近根节点的地方,频率低的在下面,这样访问速度快。举个例子,比如四个点,他们的使用频率分别是1,2,3,4,然后构成的树就是 4 0 3 0 2 0 1补:打不出树形结构...
来自百度百科:哈夫曼树构造方法:假设有n个权值,则构造出的哈夫曼树有n个叶子结点。 n个权值分别设为 w1、w2、…、wn,则哈夫曼树的构造规则为:(1) 将w1、w2、…,wn看成是有n 棵树的森林(每棵树仅有一个结点);(2) 在森林中选出两个根结点的权值最小的树合并,作为一棵新树的左、右子树,且新树的根结点权值为其左、右子树根结点权值之和;(3)从森林中删除选取的两棵树,并将新树加入森林;(4)重复(2)、(3)步,直到森林中只剩一棵树为止,该树即为所求得的哈夫曼树。简单的说,就是选择两个权值最小的节点,构造一棵树,树的根权值是两个权值最小的节点之和,将新的权值节点放回序列,继续按照上述方法构造,直到只有一棵树为止,这样的树其wpl最小。

文章TAG:哈夫曼树  构造  怎样  霍夫曼树  哈夫曼树的构造  
下一篇