1.学习总结 1.1树结构思维导图 1.2 树结构学习体会 感觉树的内容很难,一些逻辑比较难弄懂,而且内容比较多,所以还是得花时间去理解,树不比先前的那些线性结构,多了很多新东西,比如带权路径长度,哈弗曼编码什么的,总之要学起来真的不容易。 2.PTA实验作业 1.题目1:6 2 求二叉树高度 1. ...
分类:
其他好文 时间:
2018-05-05 20:45:41
阅读次数:
274
1.哈夫曼树 假设有n个权值{w1, w2, ..., wn},试构造一棵含有n个叶子结点的二叉树,每个叶子节点带权威wi,则其中带权路径长度WPL最小的二叉树叫做最优二叉树或者哈夫曼树。 特点:哈夫曼树中没有度为1的结点,故由n0 = n2+1以及m= n0+n1+n2,n1=0可推出m=2*n0 ...
分类:
其他好文 时间:
2018-04-19 21:53:47
阅读次数:
212
哈夫曼树的定义 带权路劲长度(WPL):设二叉树有n个叶子结点,每个叶子结点带有权值Wk,从根结点到每个叶子结点的长度为Ik,则每个叶子结点的带权路径长度之和就是: 最优二叉树或哈夫曼树:WPL最小的二叉树 哈夫曼树的特点: 没有度为1的结点; n个叶子结点的哈夫曼树共有2n-1个结点; 哈夫曼树的 ...
分类:
其他好文 时间:
2018-04-15 15:00:58
阅读次数:
168
一、哈夫曼树 1. 哈夫曼树也称最优二叉树。 叶子节点的权值是对叶子节点赋予的一个有意义的数值量。 设二叉树具有 n 个带权值的叶子结点,从根节点到各个叶子结点的路径长度与相应叶子结点权值的乘积之和叫做二叉树的带权路径长度。 给定一组具有确定权值的叶子结点,可以构造处不同的二叉树,将其中带权路径长度 ...
分类:
编程语言 时间:
2018-03-29 22:44:11
阅读次数:
258
带权路径长度:从根结点到该结点的路径长度再乘以该结点权值 哈夫曼树的带权路径长度和:所有构造得到的中间结点(非叶子结点)的权值和 构造中,每次寻找权值最小的两个结点,使用堆优化指logn ...
分类:
其他好文 时间:
2018-03-03 18:14:01
阅读次数:
188
给定n个权值作为n个叶子结点,构造一棵二叉树,若带权路径长度达到最小,称为哈夫曼树(Huffman Tree)。哈夫曼树是带权路径长度最短的树,权值较大的结点离根较近。 构造 假设有n个权值,则构造出的哈夫曼树有n个叶子结点。 n个权值分别设为 w1、w2、…、wn,则哈夫曼树的构造规则为: (1) ...
分类:
编程语言 时间:
2018-02-09 17:23:57
阅读次数:
247
哈夫曼树又称最优二叉树,非叶子结点有且仅有两个子结点,哈夫曼树是带权路径长度最短的树,权值较大的结点离根较近。 构造:自下而上 假设有n个权值,则构造出的哈夫曼树有n个叶子结点。 n个权值分别设为 w1、w2、…、wn,则哈夫曼树的构造规则为: (1) 将w1、w2、…,wn看成是有n 棵树的森林( ...
分类:
其他好文 时间:
2018-02-03 18:57:27
阅读次数:
165
一、 什么是哈夫曼树 是一种带权路径长度最短的二叉树,也称最优二叉树 带权路径长度:WPL=(W1*L1+W2*L2+W3*L3+...+ Wn*Ln) N个权值Wi(i=1,2,...n)构成一棵有N个叶结点的二叉树。对应的叶结点的路径长度为Li(i=1,2,...n)。 二、 建立哈夫曼树 已知 ...
分类:
编程语言 时间:
2018-01-20 19:46:46
阅读次数:
124
2018.1.18 Thur 如何构建哈夫曼树 如何理解哈夫曼树及其应用: 序列中的数就是权重。数值越大表示权重越高,越应该出现在树的上层。同层上的带权路径长度相等,不区分左右子树。可能出现权重相等而带权路径长度不相等的情况。 同一组权重值构造出的哈夫曼树不是唯一的,但带权路径长度WPL是相等的。也 ...
分类:
其他好文 时间:
2018-01-19 14:12:57
阅读次数:
372
一、准备知识 1、Huffman树 Huffman树是一类带权路径长度WPL最短的二叉树,中文名叫哈夫曼树或最优二叉树。 相关概念: 结点的路径长度:从根结点到该结点的路径上分支的数目。 树的路径长度:树中每个结点的路径长度之和。 树的带权路径长度:树中所有叶子结点的带权路径长度之和。 构造Huff ...
分类:
编程语言 时间:
2018-01-08 13:29:14
阅读次数:
179