20182330《程序设计与设计结构》 第十周学习总结 [toc] 教材学习内容总结 周一: 树 1. 树的定义:树是有n个结点组成的有限集合 n=0,为空树 n》0,有特定节点为根 2. 特点:非线性结构:一个前驱多个后继 。 其他(除根)到根的路径唯一 3. 结点的度:结点的子树数 树的度:结点 ...
分类:
其他好文 时间:
2019-11-26 22:34:52
阅读次数:
107
首先是哈夫曼树的定义:在一棵二叉树中,带权路径长度达到最小,成这样的树是最优二叉树,也是哈弗曼树。大概意思就是把数值大的节点放在树上面,数值小的节点放在树下面。哈夫曼树的结构使用顺序结构,这里直接使用了数组。 建造哈弗曼树的思路:根据二叉树的性质,有n个叶子节点,二叉树就会有2n-1个节点。定义一个 ...
分类:
其他好文 时间:
2019-11-23 16:33:12
阅读次数:
89
要了解红黑树首先需要知道什么是二叉树。由树的定义可以看出,树的定义使用了递归的方式。递归在树的学习过程中起着重要作用,如果对于递归不是十分了解,建议先看看递归算法。 参考博文:https://www.jianshu.com/p/bf73c8d50dc2 ...
分类:
其他好文 时间:
2019-11-18 20:43:59
阅读次数:
74
由二叉树的定义可知,一棵二叉树由根结点、左子树和右子树三部分组成。因此,只要遍历了这三个部分,就可以实现遍历整个二叉树。若以D、L、R分别表示遍历根结点、左子树、右子树,则二叉树的递归遍历可以有一下三种方式: 先序遍历(DLR) 先序遍历的递归过程为 (1)访问根结点 (2)先序遍历根结点的左子树 ...
分类:
其他好文 时间:
2019-11-13 23:53:18
阅读次数:
110
二叉树的定义 二叉树(Binary Tree)是n(n≥0)个元素的有限集合,该集合为空或者为由一个称为“根”的元素及两个不相交的、被分别称为左子树和右子树的二叉树组成 二叉树的基本特点: 每个结点最多有两棵子树 左子树和右子树是有顺序的,且不可颠倒 图一 节点、度和叶子的概念 1、结点 二叉树中的 ...
分类:
其他好文 时间:
2019-11-13 00:56:08
阅读次数:
106
[TOC] 1 引言 RB Tree,即红黑树,它的定义如下: 1. 这是一颗二叉树,且每个节点要么是红色、要么是黑色 2. 根节点是黑色 3. 叶子节点也是黑色的,且叶子节点不存储数据,即叶子节点是nil空节点 4. 不能出现连续的红色节点,即相邻的红色节点必须被黑色节点隔开 5. 任何一个节点到 ...
分类:
其他好文 时间:
2019-11-02 21:40:16
阅读次数:
102
一、定义与概念 1、二叉查找树又称为二叉排序树,它是一种特殊二叉树。 二叉查找树的定义为一颗空树,或满足如下性质的树: ①左子树非空,则左子树所有结点的值均小于根结点的值。 ②右子树非空,则右子树所有结点的值均大于(或大于等于)根结点的值。 ③左右子树也递归的定义为二叉查找树 二、二叉查找树的操作 ...
分类:
编程语言 时间:
2019-10-11 12:09:52
阅读次数:
110
一、树的定义 树形结构是一类重要的非线性结构。树形结构是结点之间有分支,并具有层次关系的结构。它非常类似于自然界中的树。树的递归定义:树(Tree)是n(n≥0)个结点的有限集T,T为空时称为空树,否则它满足如下两个条件:(1)有且仅有一个特定的称为根(Root)的结点;(2)其余的结点可分为m(m ...
分类:
编程语言 时间:
2019-10-05 18:53:17
阅读次数:
126
查找算法Tree table lookup(树表查找), 基本思想及红黑树和B+树的树的定义规则 ...
分类:
编程语言 时间:
2019-09-28 18:00:36
阅读次数:
124
1. 梳理第二章的内容,写一篇理解与总结。 通过这些天对第二章内容的学习,我理解了很多也学到了很多的知识,下面我将对我所学到的第二章的全部知识进行梳理和总结,其中包括文法是什么、字母表的定义、符号串的定义及运算、文法及其类型、语法数内容、句型的推导、文法二义性、句型分析及相关,这几大部分。希望可以为 ...
分类:
编程语言 时间:
2019-09-27 23:04:52
阅读次数:
123