数据模型用来抽象、表示和处理现实世界中的数据和信息。数据模型所描述的内容有3个部分,它们是数据结构、数据操作与数据约束。E-R模型用E-R图来表示。二维表中元组的分量是不可分割的基本数据项——元组分量的原子性。在二维表中唯一标识元组的最小属性值称为该表的键或码。关系模型允许定义三类数据约束,它们是实体完整性约束、参照完整性约束以及用户定义的完整性约束。......
2023-11-03
1.树的基本概念
树是一种简单的非线性结构。在树结构中,每一个结点只有一个前件,称为父结点,没有前件的结点只有一个,称为树的根结点。每一个结点可以有多个后件,它们称为该结点的子结点。没有后件的结点称为叶子结点。
在树结构中,一个结点所拥有的后件个数称为该结点的度。叶子结点的度为0。在树中,所有结点中的最大的度称为树的度。
2.二叉树及其基本性质
1)二叉树的定义
二叉树是一种很有用的非线性结构,它具有以下两个特点:
(1)非空二叉树只有一个根结点。
(2)每一个结点最多有两棵子树,且分别称为该结点的左子树和右子树。
由以上特点可以看出,在二叉树中,每一个结点的度最大为2,即所有子树(左子树或右子树)也均为二叉树,而树结构中的每一个结点的度可以是任意的。另外,二叉树中的每个结点的子树被明显地分为左子树和右子树。在二叉树中,一个结点可以只有左子树而没有右子树,也可以只有右子树而没有左子树。当一个结点既没有左子树也没有右子树时,该结点即为叶子结点。
2)二叉树的基本性质
二叉树具有以下几个性质。
性质1:在二叉树的第k层上,最多有2k-1(k≥1)个结点。
性质2:深度为m的二叉树最多有2m-1个结点。
性质3:在任意一棵二叉树中,度为0的结点(即叶子结点)总是比度为2的结点多一个。
性质4:具有n个结点的二叉树,其深度至少为[log2n] +1,其中[log2n]表示取log2n的整数部分。
小技巧:在二叉树的遍历中,无论是前序遍历、中序遍历还是后序遍历,二叉树的叶子结点的先后顺序都是不变的。
3.满二叉树与完全二叉树(www.chuimin.cn)
满二叉树是指这样的一种二叉树:除最后一层外,每一层上的所有结点都有两个子结点。在满二叉树中,每一层上的结点数都达到最大值,即在满二叉树的第k层上有2k-1个结点,且深度为m的满二叉树有2m-1个结点。完全二叉树是指这样的二叉树:除最后一层外,每一层上的结点数均达到最大值;在最后一层上只缺少右边的若干结点。对于完全二叉树来说,叶子结点只可能在层次最大的两层上出现:对于任何一个结点,若其右分支下的子孙结点的最大层次为p,则其左分支下的子孙结点的最大层次或为p,或为p+1。
完全二叉树具有以下两个性质。
性质1:具有n个结点的完全二叉树的深度为[log2n] +1。
性质2:设完全二叉树共有n个结点。如果从根结点开始,按层次(每一层从左到右)用自然数1,2,……,n给结点进行编号,则对于编号为k(k=1,2,……,n)的结点有以下结论。
(1)若k=1,则该结点为根结点,它没有父结点;若k>1,则该结点的父结点编号为INT(k/2)。
(2)若2k≤n,则编号为k的结点的左子结点编号为2k;否则该结点无左子结点(显然也没有右子结点)。
(3)若2k+1≤n,则编号为k的结点的右子结点编号为2k+1;否则该结点无右子结点。
4.二叉树的遍历
在遍历二叉树的过程中,一般先遍历左子树,再遍历右子树。在先左后右的原则下,根据访问根结点的次序,二叉树的遍历分为3类:前序遍历、中序遍历和后序遍历。
(1)前序遍历:先访问根结点,然后遍历左子树,最后遍历右子树;并且,在遍历左、右子树时,仍然先访问根结点,然后遍历左子树,最后遍历右子树。
(2)中序遍历:先遍历左子树,然后访问根结点,最后遍历右子树;并且,在遍历左、右子树时,仍然先遍历左子树,然后访问根结点,最后遍历右子树。
(3)后序遍历:先遍历左子树,然后遍历右子树,最后访问根结点;并且,在遍历左、右子树时,仍然先遍历左子树,然后遍历右子树,最后访问根结点。
疑难解答:树与二叉树的不同之处是什么?
在二叉树中,每一个结点的度最大为2,即所有子树(左子树或右子树)也均为二叉树,而树结构中的每一个结点的度可以是任意的。
误区警示:满二叉树也是完全二叉树,而完全二叉树一般不是满二叉树。应该注意二者的区别。
有关计算机基础和Office高级应用 第2版的文章
数据模型用来抽象、表示和处理现实世界中的数据和信息。数据模型所描述的内容有3个部分,它们是数据结构、数据操作与数据约束。E-R模型用E-R图来表示。二维表中元组的分量是不可分割的基本数据项——元组分量的原子性。在二维表中唯一标识元组的最小属性值称为该表的键或码。关系模型允许定义三类数据约束,它们是实体完整性约束、参照完整性约束以及用户定义的完整性约束。......
2023-11-03
________A)需求分析B)软件开发C)软件确认D)软件演进解析:B)、C)、D)项都是软件工程过程的基本活动,还有一个是软件规格说明。________是指把一个待开发的软件分解成若干小的简单的部分。数据流图采用4种符号表示________、数据源点和终点、数据流向和数据加工。......
2023-11-03
算法的时间复杂度取决于________。即与输入数据所有的可能取值范围、输入各种数据或数据集的概率有关。根据各种遍历算法,不难得出前序遍历序列是EDBAC。当n≥2时,显然n+1>[log2n] +1。设树T的度为4,其中度为1、2、3和4的结点的个数分别为4、2、1、1,则T中叶子结点的个数为________。二分法查找的存储结构仅限于________且是有序的。......
2023-11-03
制作演示文稿时应遵守以下原则。3.规范性原则幻灯片的制作要规范,特别是在文字的处理上,力求使字数、字体、字号的搭配做到合理、美观。......
2023-11-03
二分查找法只适用于顺序存储的有序表。这个过程一直进行到查找成功或子表长度为0为止。对于长度为n的有序线性表,在最坏情况下,二分查找只需要比较log2n次。对剩下的线性表重复上述过程,直到剩下的线性表变空为止,此时已经排好序。......
2023-11-03
在CAD系统与设计人员的相互作用下,能自动将设计方案转变成生产图纸。目前,无论是复杂的飞机,还是简单的家电产品都广泛使用了CAD/CAM技术。所以,在学校教学中,已把计算机应用技术本身作为“文化基础”课程安排于教学计划之中。......
2023-11-03
结构化程序设计方法引入了工程化思想和结构化思想,使大型软件的开发和编程得到了极大的改善。结构化程序设计方法的主要原则为:自顶向下、逐步求精、模块化和限制使用goto语句。......
2023-11-03
相关推荐