赫夫曼树: 如果有n个权值{w1,w2,w3....},试构造一棵具有n个叶子节点的二叉树,每一个叶子节点带权为wi。则当中带权路径长度最小的二叉树称为最优二叉树或者叫赫夫曼树。 构造赫夫曼树: 如果有n个权值,则构造出的赫夫曼树有n个叶子节点,n个权值分别设置为w1,w2,....wn,则赫夫曼树 ...
分类:
其他好文 时间:
2017-05-19 12:17:18
阅读次数:
229
1. 节点个数 2. 叶子个数 3. 第K层节点个数 4. 二叉树的最低公共节点,判断节点在左右两侧,则根节点(可能为子树根)为最小公共节点,否则在左子树或右子树中递归查找公共节点 ...
分类:
其他好文 时间:
2017-05-18 01:15:16
阅读次数:
180
1.节点与结点I.节点如图/网络中一个点到达另外一个点,可认为中间的点把这两个点截断,为节点(截断点) II.结点数据存储结构如叶子结点 但是这两个点本质是一样的,只是在不同场合叫法不同而已 2.记录对事物的统称如出行记录,学生管理记录等…… 另外:有名为”记录“的数据结构 ...
分类:
其他好文 时间:
2017-05-17 23:33:43
阅读次数:
153
删除一个节点相同有可能改变树的平衡性,并且,删除所造成的不平衡性比插入所造成的平衡性的修正更加复杂。 化繁为简是算法分析中一个经常使用的方法。以下我们将欲删除节点分为三大类:欲删除节点为叶子节点、欲删除节点仅仅有一个子节点和欲删除有两个子节点。 而欲删除节点有两种可能的颜色,也须要分别对待。 为简化 ...
分类:
其他好文 时间:
2017-05-16 21:34:25
阅读次数:
297
决策树 决策树学习采用的是自顶向下的递归方法, 其基本思想是以信息熵为度量构造一棵熵值下降最快的树,到叶子节点处的熵值为零, 此时每个叶节点中的实例都属于同一类。 决策树三种生成算法 回归树: 平方误差 最小 的准则 分类树: 基尼系数 最小的准则 最大优点: 可以自学习。在学习的过程中,不需要使用 ...
分类:
其他好文 时间:
2017-05-15 16:28:02
阅读次数:
271
哈夫曼编码是一个通过哈夫曼树进行的一种编码,一般情况下,以字符:‘0’与‘1’表示。编码的实现过程很简单,只要实现哈夫曼树,通过遍历哈夫曼树,这里我们从每一个叶子结点开始向上遍历,如果该结点为父节点的左孩子,则在字符串后面追加“0”,如果为其右孩子,则在字符串后追加“1”。结束条件为没有父节点。然后 ...
分类:
编程语言 时间:
2017-05-14 12:20:08
阅读次数:
194
如果二叉树为: a b c d e 由于程序中要知道叶子结点(终点)。所以要讲上面的二叉树变成扩展二叉树(把叶子结点的孩子补成#,用作标记),扩展后就变成了: a b c # d # e # # # # 那么在输入的时候,须要输入ab#d##c#e##(输入后直接回车就可以) #include <s ...
分类:
其他好文 时间:
2017-05-13 22:10:27
阅读次数:
331
堆排序利用的完全二叉树这种数据结构所设计的一种算法,不过也是选择排序的一种。 堆实质上是满足如下性质的完全二叉树:k[i]<=k[2*i]&&k[i]<=k[2*i+1]或者k[i]>=k[2*i]&&k[i]>=k[2*i+1], 树中任一非叶子结点的关键字均不大于(或不小于)其左右孩子(若存在) ...
分类:
编程语言 时间:
2017-05-12 23:58:05
阅读次数:
410
第一、树的定义: 1.有且只有一个称为根的节点 2.有若干个互不相交的子树,这些子树本身也是一颗树 第二、专业术语: 树的深度:从根节点到最低层,节点的层数 ,称之为树的深度。 根节点是第一层 结点的层次:根节点为第一层,根节点的子节点为第2层,以此类推 叶子节点:没有子节点的节点 非终端节点:实际 ...
分类:
编程语言 时间:
2017-05-10 23:38:21
阅读次数:
173
一、UML图 关键词:Leaf是叶子,Composite是非叶子节点,Composite包括Leaf。 二、概念 组合模式(Composite):将对象组合成树形结构以表示“部分-总体”的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。 三、说明 角色: (1)Component:为 ...
分类:
编程语言 时间:
2017-05-07 21:59:15
阅读次数:
249