数据结构严蔚敏C语言版学习复习提纲
数据结构老师给的复习要点(严蔚敏版)

数据结构⽼师给的复习要点(严蔚敏版)第⼀章1. 怎样理解“算法+数据结构=程序”这个公式?举例说明。
算法是语句序列解决特定问题的固有程序⽚段。
数据结构是确定数据间的关系。
从具体问题抽象出⼀个合适的数学模型、然后设计⼀个解决此数学模型的算法,最后编写出程序。
寻求数学模型的是指就是数据结构要完成的⼯作。
参看书p1前两段的描述。
2. 数据结构的概念,它包含哪三⽅⾯的内容?数据结构:是⼀门研究⾮数值计算的程序设计问题中计算机的操作对象以及它们之间饿关系和操作的学科。
参看书p3包含三⽅⾯的内容:1、数据之间的逻辑关系2、数据在计算机中的存储⽅式3、在数据上定义的运算的集合。
3. 数据、数据元素、数据项的基本概念。
举例说明数据元素和数据项的联系与区别。
数据:描述客观事物的数字、字符以及所有能直接输⼊到计算机中并被计算机程序处理的符号的集合。
数据元素:数据的基本单位,在计算机程序中通常作为⼀个整体进⾏考虑或处理。
数据项:数据项是具有独⽴含义的最⼩标识单位,是数据元的⼀个具体值,是数据记录中最基本的、不可分的有名数据单位。
例1:class A{int c[123];int i;};class B{A a;}B b;b.a是数据项,B是数据元素例2:⼀本书的数⽬信息为⼀个数据元素,⽽数⽬信息中每⼀项(如书名、作者名等)为⼀个数据项4. 从逻辑结构来看,数据结构有哪四种基本结构,各⾃的特点是什么?1、集合(数据元素之间同属于⼀个集合,再⽆其他关系)2、线性结构(数据元素之间存在⼀对⼀的关系)3、树形结构(数据元素之间⼀对多的关系)4、图状结构或⽹状结构(数据元素之间多对多的关系)5. 从物理结构来看,数据结构有哪两种基本结构,各⾃的特点是什么?1、顺序存储结构特点:借助元素在存储器中的相应位置来表⽰数据元素之间的逻辑关系。
2、链式存储结构特定:借助元素在存储地址的指针表⽰数据元素之间的逻辑关系。
6. 算法的5个特征,4个评价标准是什么?特征:有穷性、确定性、可⾏性、输⼊、输出。
严蔚敏《数据结构》(C语言版)笔记和习题(含考研真题)详解

严蔚敏《数据结构》(C语言版)笔记和习题(含考研真题)详解第1章绪论一、什么是数据结构数据结构是一门研究非数值计算的程序设计问题中计算机的操作对象以及它们之间的关系和操作等的学科。
二、基本概念和术语1数据数据是对客观事物的符号表示,是计算机科学中所有能输入到计算机中并能被计算机程序处理的符号的总称。
2数据元素数据元素是数据的基本单位。
3数据对象数据对象是性质相同的数据元素的集合,是数据的一个子集。
4数据结构数据结构是相互之间存在一种或多种特定关系的数据元素的集合。
(1)数据结构的基本结构根据数据元素之间关系的不同特性,通常有下列四类基本结构:①集合。
数据元素属于“同一个集合”,并无其他复杂关系。
②线性结构。
数据元素之间存在一个对一个的关系。
③树形结构。
数据元素之间存在一个对多个的关系。
④图状结构或网状结构。
数据元素之间存在多个对多个的关系。
【注意】区分这四种基本结构可以根据元素间的对应关系。
如图1-1所示为上述四类基本结构的关系图。
图1-1 四类基本结构的关系图(2)数据结构的形式定义数据结构的形式定义为:Data_Structure=(D,S)其中:D表示数据元素的有限集,S表示D上关系的有限集。
(3)数据结构在计算机中的表示数据结构包括数据元素的表示和关系,在计算机中称为数据的物理结构(又称存储结构)。
其中,关系有两种表示方法:顺序映象和非顺序映象。
这两种表示方法对应两种存储结构:顺序存储结构和链式存储结构。
a.顺序映象:用相对位置来表示数据元素之间的逻辑关系。
b.非顺序映象:用指针表示数据元素之间的逻辑关系。
5数据类型数据类型是一个值的集合和定义在这个值集上的一组操作的总称。
6抽象数据类型抽象数据类型(ADT)由一个值域和定义在该值域上的一组操作组成。
【注意】抽象数据类型是对数据类型架构的一种全局体现,使我们能够更加清晰地看待某一数据类型。
7多形数据类型多形数据类型是指其值的成分不确定的数据类型。
数据结构 严蔚敏C语言版 学习复习提纲

期末复习复习第一章绪论数据:计算机处理的信息总称数据项:最小单位数据元素:最基本单数据对象:元素集合数据结构:相互之间存在一种或多种特定关系的数据元素集合。
概念:数据元素之间的关系线性结构:一对逻辑结构非线性结构数据结构树:一对多图:多对多顺序存储结构链表存储结构存储结构。
索引。
基。
散列。
础知数据运算识算法描述:指令的有限有序序列有穷性确定性算法特性可行性算法输入输出时间复杂度算法分析空间复杂度、计算机算法必须具备输入、输出、可行性、确定性、有穷性5个特性。
1 2、算法分析的两个主要方面是空间复杂度和时间复杂度。
3、数据元素是数据的基本单位。
4、数据项是数据的最小单位。
5、数据结构是带结构的数据元素的集合。
6、数据的存储结构包括顺序、链接、散列和索引四种基本类型。
线性表复习第二章定义逻辑关系:前趋后继节省空间基本特点随机存取插、删效率低顺序存储结构插入基本运算删除一个数据一个指针多占空特查找费插、删效率无法查找前趋结单链运算特点:单链表+前趋指针域链表存储双向结构链表插入运算删除特点:单链表的尾结点指针循环指向附加头结点。
链表运算:联接1 、一个指向后继结点的指针、在双链表中,每个结点有两个指针域,包括一个指向前驱结点的指针 2、线性表采用顺序存储,必须占用一片连续的存储单元、线性表采用链式存储,便于进行插入和删除操作3 、线性表采用顺序存储和链式存储优缺点比较。
4 5、简单算法复习栈和队列第三章.栈的概念:在一端操作的线性表LIFO栈的特点:先进后出存储结初始化push 进栈运算算法pop出栈队列概念:在两端操作的线性表FIFO队列特点:先进先出假溢出顺序队列front=rear队空:循环队列front=(rear+1)%MAXSIZE队满:队列front∧队空:链队列rear初始化判空顺序:进队基本运算链队:出队取队首元素1栈和队列的异同点。
、、2栈和队列的基本运算出栈和出队、3 、4基本运算复习串第四章.n(≥)个字符组成的有限序列1定义:由”c……cS=”cc n231串长度、空白串、空串。
数据结构(C语言版)(严蔚敏)

31
4、效率与低存储量需求 、
通常,效率指的是算法执行时间;存储量指的是 算法执行过程中所需要的最大存储空间。两者都 与问题的规模有关。
32
算法效率的衡量方法和准则
通常有两种衡量算法效率的方法: 事后统计法 缺点:1、必须执行程序 2、其它因素掩盖算法本质 事后分析估算法 和算法执行时间相关的因素: 1算法选用的策略 2、问题的规模 3、编写程序的语言 4、编译程序产生的机器代码的质量 5、计算机执行指令的速度
5
–例
书目自动检索系统
线性表
书目文件
书目卡片 001 高等数学 樊映川 002 理论力学 罗远祥 登录号: 003 高等数学 华罗庚 004 书名: 线性代数 栾汝书 …… 作者名: …… ……
按书名
高等数学 理论力学 线性代数 ……
S01 L01 S01 S02 ……
索引表
按分类号
分类号: 001, 003… … 樊映川 出版单位: 002, … … .. 华罗庚 出版时间: 004, … … 栾汝书 价格: … … ..
29
2、可读性 、
算法主要是为了人的阅读与交流,其次才是为计 算机执行。因此算法应该易于人的理解;另一方 面,晦涩难读的程序易于隐藏较多错误而难以调 试;
30
3.健壮性 健壮性
当输入的数据非法时,算法应当恰当地作出反映 或进行相应处理,而不是产生莫名奇妙的输出结 果。并且,处理出错的方法不应是中断程序的执 行,而应是返回一个表示错误或错误性质的值, 以便在更高的抽象层次上进行处理。
23
1.3 算法和算法分析
算法的概念和描述: 算法的概念和描述: 什么是算法? 什么是算法? 算法( 算法(Algorithm)是为了解决某类问题而规定的一 是为了解决某类问题而规定的一 个有限长的操作序列。 个有限长的操作序列。一个算法必须满足以下五 个重要特性: 个重要特性:
数据结构期末复习要点(严蔚敏版)

数据结构期末复习要点第一章绪论1、掌握基本概念和术语,看教材P4—P6部分内容;2、看P10—P11关于类C的语法描述,算法设计写代码时可用到;3、掌握算法的特征(5个)和要求(5个)(P13—P14),能够结合具体算法分析算法的时间复杂度和空间复杂度(比如线性表的插入、删除操作,查找、排序等操作),理解O(n)、O(1)等时间复杂度的具体含义(P14—P17)。
第二章线性表1、看教材P21—P26,掌握有关线性表顺序存储的内容:(1)顺序表的随机存取(P21计算地址的公式);(2)顺序表的表示(P22的Typedef);(3)顺序表为空、为满的判定,插入和删除操作的特征以及时间复杂度的分析(P23—P25);(4)有关顺序表的编程题。
2、看教材P27—P30,掌握有关线性表链式存储的内容:(1)单链表的表示(P28的Typedef);(2)单链表为空的判定(带头结点、不带头结点);(3)单链表插入、删除操作的特征(操作点的确定以和指针的修改)以及时间复杂度分析(P29—P30);(4)有关单链表的编程。
3、为节约时间,循环链表、双向链表以及多项式加法可以不看;4、算法设计题要求写代码,在本章体现的可能性比较大。
第三章栈和队列1、顺序栈的表示,栈操作的特点以及为空、为满的判定(P46—P47);2、栈的应用举例看个标题就足够了;3、链队列的表示以及入队、出队操作(P61—P62);4、循环队列为空、为满的判定(P65的代码中);5、离散事件模拟这节不用看;6、第四章只需要看P70就够了,掌握串的特点(元素受限),串长度、空串、串的位置、串相等几个概念即可。
第六章树和二叉树1、看教材P120,了解有关树的概念和术语;2、了解二叉树的链式存储结构(P127),掌握二叉树的性质(P123—P125),并会做题(参考课件或指导书相关内容);3、掌握二叉树的各种遍历算法(P128—P129或课件):(1)能够根据二叉树写出各种遍历序列;(2)能够由两种遍历序列(必须包含中序序列)恢复二叉树;(3)理解二叉树遍历算法的递归代码,能够读懂代码含义。
《数据结构》学习指导

《数据结构》学习指导说明:本指导以《数据结构》(C语言版)(严蔚敏等编著,清华大学出版社1997年出版,国家级优秀教材特等奖)和《数据结构题集》(严蔚敏等编著,清华大学出版社1999年出版)为教学主要参考书。
一、绪论1、学习目的:明确数据结构课程在本专业知识结构中的地位,作用。
课程的特点,教学的要求,方法。
明确数据结构所研究的问题以及有关基本概念。
初步掌握抽象数据类型的表示与实现,初步明确算法分析的作用与分析的重点,初步掌握算法分析的方法。
2、学习重点:数据的逻辑结构、存储结构及其算法,数据结构的有关概念,抽象数据类型及其表示与实现,算法,算法设计的要求,算法的时间复杂度和算法的空间复杂度。
3、学习难点:数据结构的有关概念,抽象数据类型的表示与实现;算法的时间复杂度分析。
4、课程内容与基本要求(一) 数据结构的引入(1) 三个世界:现实世界,信息世界,机器世界。
数据结构要解决的就是实现从现实世界到信息世界,再由信息世界到机器世界的转换,从而实现用计算机来解决问题的目的。
(2) 非数值问题(结合三个世界讲):控制,管理,数据处理(3) 数值问题:数值计算(4)数据结构:从学科角度讲,数据结构是一门研究非数值计算的程序设计问题中计算机操作对象以及他们之间的关系和操作等等的学科。
(二) 课程的地位,性质,作用。
(1) 地位: 计算机专业的核心课程之一。
(2) 性质: 算法理论基础和软件设计的技术基础课。
(3) 作用: 程序设计的基础,编译程序,操作系统,数据库系统及软件系统和应用程序的基础(三) 数据结构的产生和发展(四) 课程的特点,学习的要求教材:《数据结构》(C语言版)严蔚敏等编著北京清华大学出版社1997年参考书:《数据结构》许卓群等编著北京高等教育出版社1987年数据结构实用教程》(C/C++描述)徐孝凯北京清华大学出版社1999年《数据结构题集》严蔚敏等编著北京清华大学出版社1999年《数据结构导学》苏光奎等编著北京清华大学出版社20XX年《数据结构》(C语言篇)-习题与解析李春葆编著北京清华大学出版社20XX年《数据结构》实验指导书唐开山自编讲义20XX年(五) 基本概念和术语数据数据元素数据对象(4)数据结构:按某种逻辑关系组织起来的一批数据,按一定的存储表示方式把它存储到计算机的存储器中,并在这些数据上定义了一个运算的集合,叫做一个数据结构。
严蔚敏数据结构复习整理完整版

1.复杂性分析对各种操作的时间复杂性的分析。
主要是链表,树,排序等简单一些的分析。
分析的时候,从简单的入手,学会方法。
后续的各种豆可能让你分析时间复杂度。
线性链表(顺序表和单链表)链表循环链表双向链表2.线性结构队列(循环队列)栈链表主要操作:找某一个元素,插入一个(在哪个位置增加),删除一个(在哪个位置删除)。
栈:查找,插入(位置固定),删除(位置固定)队列:查找,插入(位置固定),删除(位置固定)顺序表(可以视为一个数组)单链表:(删除)(插入)倒置:(查找)循环链表双向链表栈:(插入删除查找)队列(插入删除查找)循环队列的实现,并不是像上面的图那样,实现了一个循环的样子。
3.二叉树基本概念二叉树是每个节点最多有两个子树的有序树。
二叉树常被用于实现二叉查找树和二叉堆。
值得注意的是,二叉树不是树的特殊情形。
二叉树是每个结点最多有两个子树的有序树。
通常根的子树被称作“左子树”(left subtree)和“右子树”(right subtree)。
二叉树常被用作二叉查找树和二叉堆或是二叉排序树。
二叉树的每个结点至多只有二棵子树(不存在出度大于2的结点),二叉树的子树有左右之分,次序不能颠倒。
二叉树不是树的一种特殊情形,尽管其与树有许多相似之处,但树和二叉树有两个主要差别:1. 树中结点的最大度数没有限制,而二叉树结点的最大度数为2;2。
树的结点无左、右之分,而二叉树的结点有左、右之分。
二叉树是递归定义的,其结点有左右子树之分,逻辑上二叉树有五种基本形态:(1)空二叉树——如图(a);(2)只有一个根结点的二叉树——如图(b);(3)只有左子树——如图(c);(4)只有右子树-—如图(d);(5)完全二叉树-—如图(e)注意:尽管二叉树与树有许多相似之处,但二叉树不是树的特殊情形性质(1)在非空二叉树中,第i层的结点总数不超过, i〉=1;(2)深度为h的二叉树最多有2^h—1个结点(h>=1),最少有h个结点;(3)对于任意一棵二叉树,如果其叶结点数为N0,而度数为2的结点总数为N2,则N0=N2+1;(4)具有n个结点的完全二叉树的深度为(5)有N个结点的完全二叉树各结点如果用顺序方式存储,则结点之间有如下关系: 若I为结点编号则如果I>1,则其父结点的编号为I/2;如果2*I<=N,则其左儿子(即左子树的根结点)的编号为2*I;若2*I>N,则无左儿子;如果2*I+1〈=N,则其右儿子的结点编号为2*I+1;若2*I+1〉N,则无右儿子。
严蔚敏数据结构(C语言版)知识点总结笔记课后答案

第1章绪论1.1复习笔记一、数据结构的定义数据结构是一门研究非数值计算的程序设计问题中计算机的操作对象以及它们之间的关系和操作等的学科。
二、基本概念和术语数据数据(data)是对客观事物的符号表示,在计算机科学中是指所有能输入到计算机中并被计算机程序处理的符号的总称,它是计算机程序加工的“原料”。
2.数据元素数据元素(data element)是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。
3.数据对象数据对象(data object)是性质相同的数据元素的集合,是数据的一个子集。
4.数据结构数据结构(data structure)是相互之间存在一种或多种特定关系的数据元素的集合。
(1)数据结构的基本结构根据数据元素之间关系的不同特性,通常有下列四类基本结构:① 集合。
数据元素之间除了“同属于一个集合”的关系外,别无其它关系。
② 线性结构。
数据元素之间存在一个对一个的关系。
③ 树形结构。
数据元素之间存在一个对多个的关系。
④ 图状结构或网状结构。
数据元素之间存在多个对多个的关系。
如图1-1所示为上述四类基本结构的关系图。
图1-1 四类基本结构的关系图(2)数据结构的形式定义数据结构的形式定义为:数据结构是一个二元组Data_Structure==(D,S)其中:D表示数据元素的有限集,S表示D上关系的有限集。
(3)数据结构在计算机中的表示数据结构在计算机中的表示(又称映象)称为数据的物理结构,又称存储结构。
它包括数据元素的表示和关系的表示。
① 元素的表示。
计算机数据元素用一个由若干位组合起来形成的一个位串表示。
② 关系的表示。
计算机中数据元素之间的关系有两种不同的表示方法:顺序映象和非顺序映象。
并由这两种不同的表示方法得到两种不同的存储结构:顺序存储结构和链式存储结构。
a.顺序映象的特点是借助元素在存储器中的相对位置来表示数据元素之间的逻辑关系。
b.非顺序映象的特点是借助指示元素存储地址的指针(pointer)表示数据元素之间的逻辑关系。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
期末复习第一章绪论复习数据:计算机处理的信息总称数据项:最小单位数据元素:最基本单位数据对象:元素集合数据结构:相互之间存在一种或多种特定关系的数据元素集合。
数据结构逻辑结构存储结构基础知数据运算概念:数据元素之间的关系线性结构:一对一非线性结构树:一对多图:多对多顺序存储结构链表存储结构索引。
散列。
算法描述:指令的有限有序序列有穷性确定性算法特性可行性输入输出算法分析时间复杂度空间复杂度1、计算机算法必须具备输入、输出、可行性、确定性、有穷性5个特性。
2、算法分析的两个主要方面是空间复杂度和时间复杂度。
3、数据元素是数据的基本单位。
4、数据项是数据的最小单位。
5、数据结构是带结构的数据元素的集合。
6、数据的存储结构包括顺序、链接、散列和索引四种基本类型。
概念第二章 线性表 复习特点:单链表的尾结点指针循环指向附加头结点。
链表运算:联接1、在双链表中,每个结点有两个指针域,包括一个指向前驱结点的指针2、线性表采用顺序存储,必须占用一片连续的存储单元3、线性表采用链式存储,便于进行插入和删除操作4、线性表采用顺序存储和链式存储优缺点比较。
5、简单算法第三章 栈和队列 复习定义 逻辑关系:前后继 基本特点顺序存储基本运算节省空间随机存取 插、删效率低 插入 删除线性特点单链表一个指针域 +一个数据域 多占空间 查找费时 插、删效率高 无法查找前趋结点运算链表存储 结构特点:单链表 +前趋指针域双向 链表运算插入 删除、一个指向后继结点的指针存储结构运算算法栈的概念:在一端操作的线性表栈的特点:先进后出 LIFO初始化 进栈 push 出栈 pop1、 2、 3、4、队列特点:链队列 顺序队列 循环队列队列概念:在两端操作的线性表先进先出 FIFO 假溢出 队空: front=rear队满:front=(rear+1)%MAXSIZE队空:顺序:基本运算链队:fron t rea r∧初始化 判空 进队 出队 取队首元素栈和队列的异同点。
栈和队列的基本运算 出栈和出队 基本运算第四章 串 复习定义:由 n(≥ 1)个字符组成的有限序列S=”c 1 c 2c 3 ⋯⋯ c n ” 串长度、空白串、空串。
紧缩格式非紧缩格式 以字节为单位的存储格式( C 语言用数组或指针表示) 单字符链表串 多字符链表串第五章 数组和广义表 复习基本运算strlen(s) 串长度strcat(s1,s2) 联接 strcmp(s1,s2) 比较 strcpy(s1,s2) 复制 strstr(s1,s2) 子串查询模式匹配失败链接值匹配算法顺序串串变量的存储映像:串名、串值对应关系存储结构链表串行优先顺序存放列优先顺序存放C 语言数组:行优先 下标从 [0] 开始,公式变化定义: n(≥ 0)个元素的有限序列 概念:长度、深度、原子、子表表头: Head(A)= a 1表尾: Tail(A)=(a 2,a 3, ⋯,a n )tag=1 hptp 存储结构 (链表 )数组特殊矩阵压缩存储方式稀疏矩阵 对称矩阵三角矩阵 对角矩阵三元组存储:三元组m n t链表存储:十字链表应用表达式 程序调用顺序存储方式原子结点 tag=0 hptp第六章 树 复习定义:递归定义,不为空双亲、孩子、叶子、兄弟、祖先 树深、结点的度、有序树、无序树树、森林树、森林与二叉树的相互转换 树、森林树、森林的遍历1、三个结点可以组成 2 种不同形态的树。
2、一个稀疏矩阵 Am*n 采用三元组形式表示,若完成了其的转置运算要经过哪几步 :矩阵的行、列数值互换 、矩阵元素所在行列值互换、元素在矩阵中排列的位置)重新排列3、若二叉树中每一层结点的个数都达到了最大,则称为一棵满二叉树。
4、树最适合用来表示现有元素之间具有分支层次关系的数据5、哈夫曼树是带权路径长度最小的二叉树。
6、以下那些项为用十字链表表示的稀疏矩阵元素结点信息元素所在行和列 、元素的值 、指向该元素所线索二叉树二叉树二叉树定义:树中结点的度≤ 2 有序树可为空树( n=0)1.第 i 层至多有 2i-1 个结点。
2.数深为 k 的二叉树, 至多有 2k -1个结点。
3.n 0=n 2+14.n 个 结 点 的 二 叉 树 树 深 为 ∟ log 2n/2 」+15. 双亲结点为 i ,做孩子结点的编 号为 2i ,有孩子 2i+1 。
顺序:满、完全二叉树 链表:二叉、三叉链表先根遍历序列 已知先根、中根序列中根遍历序列画树; 已知后根、 中 后根遍历序列 根序列画树;二叉树 的遍历存储方式先根线索 中根线索 后根线索线索树的画法树的应用二叉排序树哈夫曼树左中右 小中大哈夫曼树的画法 编码:左 0 右 1在行的下一个元素的指针、指向该元素所在列的下一个元素的指针。
7、一个广义表可以为其它广义表所共享。
8、广义表可以是一个多层次的结构。
9、压缩存储的三角矩阵和对称矩阵的存储空间相同。
10、广义表中的元素类型可以不相同。
11、两个稀疏矩阵的和仍为稀疏矩阵。
12、二叉树的先序遍历序列中,任意一个结点均处在其孩子结点的前面。
13、对于一棵具有n 个节点的树,该树中所有节点的度数之和为n-1 。
14、树和森林的遍历中有中序遍历。
15、二叉树用链式存储时,空链域数多于非空链域数。
16、由森林转换成二叉树,其根节点的右子树总是空的。
17、哈夫曼树是带权路径长度最短的树,路径上权值较大的结点离根较近。
18、当一棵具有n 个叶子结点的二叉树的WPL值为最小时,称其树为Huffman 树,且其二叉树的形状必是唯一的。
x19、某二叉树的先序遍历序列和中序遍历序列相同的二叉树为空树或任一结点均无左孩子的非空二叉树。
20、某二叉树的先序遍历序列和后序遍历序列相同的二叉树为空树或仅有一个结点的非空二叉树。
21、某二叉树的后序遍历序列和中序遍历序列相同的二叉树为空树或任一结点均无左孩子的非空二叉树。
x 22、某二叉树的先序遍历序列和后序遍历序列相反的二叉树为高度等于结点数的二叉树。
满二叉树就是除叶子结点外的任何结点均有两个孩子结点,且所有的叶子结点都在同一层上的二叉树。
23、用一维数组存放二叉树时,总是以前序遍历存储结点,这是错误的说法24、在度为k 的树中,至少有一个度为k 的结点。
25、在非空完全二叉树中,只有最下面一层的结点为叶结点。
26、在完全二叉树中,没有左孩子的结点一定是叶子结点。
27、特殊矩阵主要形式有对称矩阵、上三角矩阵、下三角矩阵、对角矩阵28、在结点数目一定的前提下,各种形态的二叉树中,完全二叉树具有最小深度。
29、在所有深度相同的二叉树中,满二叉树具有最大结点数目。
30、给定一组权值,构造出来的哈夫曼树是不惟一的。
31、哈夫曼树中不存在度为1 的结点。
32、线索二叉树中的每个结点通常包含有5 个数据成员。
33、判断两个串相等的充分必要条件有两个:两个串的长度相等; 两个串上对应位置的字符相同34、下列哪些是广义表的特性: 层次性、共享性、递归性35、稀疏矩阵元素的三元组表示的项: 元素所在行、元素所在列、元素的值用邻接链表存 储:从小编号开 始遍历Prim 普里姆算法Kruskal 克鲁斯卡尔算法顶点 顶点最短路径 Dijkstra 迪杰斯特拉 单源点 其它顶点Floyd 弗洛伊德:用邻接矩阵计算应 用拓扑排序: AOV 网关键路径: AOE 网1、强连通分量是有向图的极大连通子图。
连通分量指的是无向图中的极大连通子图。
2、在一个图中,所有顶点的度数之和等于图的边数的 2 倍。
3、最短路径的生成斯算法可用迪杰斯特拉算法。
4、有向图的邻接表表示适用于求顶点的出度,逆邻接链表适用于求顶点的入度。
5、最小生成树只能是带权连通图的运算。
6、一个有向无环图的拓扑排序的序列是不唯一的。
7、一个图的邻接矩阵表示法是惟一的。
一个图的邻接表表示法是不惟一的。
8、若一个有向图的邻接矩阵中对角线以下元素均为零,则该图的拓扑有序序列必定存在。
若一个有向图中存在回路,则该图的拓扑有序序列不存在。
9、用邻接矩阵法存储一个图所需的存储单元数目与图的边数无关,与顶点数有关。
10、有 n 个顶点的无向图 , 采用邻接矩阵表示 , 图中的边数等于邻接矩阵中非零元素之和的一半。
11、邻接表中边结点数目为奇数的图一定是有向图。
12、不同的求最小生成树的方法最后得到的生成树是不一定相同的。
第七章 图 复习定义: G=(V,E ) 无向图、有路径、回路(环) 、简单路径、简单回路 连通图、连通分量、强连通图、强连通分量顶点二的叉度树:定T 义D (:Vi 边与二度叉的树关定系义::2e 可=∑为T 空D 树(V (i ) 网络: AOV 网、 AOE 网(:Vi 树)=中ID 结(V 点i )+的O 度D V 度i ) ≤(1≤2 i ≤有n序) 树存储结构邻接矩阵 邻接链表、逆邻接链表图的遍历深度优先遍历序列 DFS 广度优先遍历序列 BFS生成树 最小生成13、在一个图中,所有顶点的度数之和等于图的边数的 2 倍。
14、在一个有向图的拓朴序列中,若顶点a在顶点b 之前,则图中必有一条弧<a,b> ,这是不正确的说法。
15、关键路径是从源点到汇点的最长路径。
任意AOE网的关键路径是不唯一的。
16、有向图中一个顶点的度应该是它的出度与人度之和。
17、n个顶点的无向图最多有n(n-1)/2 条边,n 个顶点的有向图最多有n(n-1)条边。
18、在无向图中,若顶点i 到顶点j 有路径,则这两个顶点之间是连通的。
19、连通图的最小生成树是不惟一的。
20、邻接矩阵主要用来表示顶点之间的关系。
若表示某图的邻接矩阵不是对称矩阵,则该图一定是有向图。
21、若表示某图的邻接矩阵中出现了全零行或者全零列,则该图一定是非连通图或非强连通图22、无向图的邻接表中边结点数目一定为偶数。
23、最短路径一定是简单路径。
24、不能对强连通图进行拓扑排序。
25、存储无向图的邻接矩阵是对称的,因此可以只存储邻接矩阵的下(上)三角部分。
26、在AOE网络中可以有多条关键路径。
27、用边表示活动的网络(AOE网)的关键路径是指从源点到终点的路径长度最长的路径。
28、对一个连通图进行一次深度优先搜索可以遍访图中的所有顶点。
29、图中各个顶点的编号是人为的,不是它本身固有的,因此可以根据需要进行改变。
30、连通图的广度优先搜索中一般要采用队列来暂存刚访问过的顶点31、图的深度优先搜索中一般要采用栈来暂存刚访问过的结点32、有向图的遍历可采用广度优先搜索方法33、在AOE网中,减小任一关键活动上的权值后,整个工期也就相应减少,是错误的。
34、AOE网工程工期为关键路径上的权之和35、在关键路径上的活动都是关键活动,而关键活动也必须在关键路径上36、任何一个关键活动提前完成,不一定将使整个工程提前完成37、求关键路径是以拓扑排序为基础的38、一个事件的最早开始时间同以该事件为尾的弧的活动最早开始时间相同39、关键活动一定位于关键路径上40、在AOV网中弧表示优先关系,是一种有向无环图,AOV网拓扑排序的结果不惟一确定41、最小生成树可以用普里姆、克鲁斯卡尔算法。