数据结构老师给的复习要点(严蔚敏版)

合集下载

最新250页的精品清华大学严蔚敏数据结构

最新250页的精品清华大学严蔚敏数据结构

证略。
例5for(i=2;i<=n;++I)
for(j=2;j<=i-1;++j)
{++x;a[i,j]=x;}
语句频度为:
1+2+3+…+n-2=(1+n-2) ×(n-2)/2
=(n-1)(n-2)/2
=n2-3n+2
∴时间复杂度为O(n2)
即此算法的时间复杂度为平方阶.
一个算法时间为O(1)的算法,它的 基本运算执行的次数是固定的。因此,
事先分析 求出该算法的一个时间界限函数
事后测试 收集此算法的执行时间和实际占用 空间的统计资料。
定义:如果存在两个正常数c和n0,对于所有的 n≧n0,有︱f(n) ︳≦c|g(n) ︳
则记作 f(n)=O(g(n))
一般情况下,算法中基本操作重复执行的 次数是问题规模n的某个函数,算法的时 间量度记作
此,只要有人能将现有指数时间算法中
(1)有穷性 一个算法必须总是在执行有穷步 之后结束,且每一步都在有穷时间内完成。
(2)确定性 算法中每一条指令必须有确切的 含义。不存在二义性。且算法只有一个入口和 一个出口。
(3)可行性 一个算法是可行的。即算法描述 的操作都是可以通过已经实现的基本运算执行 有限次来实现的。
4)输入 一个算法有零个或多个输入,这些输 入取自于某个特定的对象集合。
250页的精品清华大学严蔚敏数 据结构
第一章 绪 论
1.1 什么是数据结构 1.2 基本概念和术语 1.3 抽象数据类型的表示与实现 1.4 算法和算法分类
1.4.1 算法 1.4.2 算法设计的要求 1.4.3 算法效率的度量 1.4.4 算法的存储空间的需求

数据结构老师给的复习要点(严蔚敏版)

数据结构老师给的复习要点(严蔚敏版)

数据结构⽼师给的复习要点(严蔚敏版)第⼀章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个评价标准是什么?特征:有穷性、确定性、可⾏性、输⼊、输出。

严蔚敏《数据结构》配套复习资料(1-3章)【圣才出品】

严蔚敏《数据结构》配套复习资料(1-3章)【圣才出品】
1 / 155
圣才电子书 十万种考研考证电子书、题库视频学习平台

③树形结构:数据元素之间存在一个对多个的关系。 ④图状结构或网状结构:数据元素之间存在多个对多个的关系。 【注意】区分这四种基本结构可以根据元素间的对应关系。 如图 1-1 所示为上述四类基本结构的关系图。
圣才电子书 十万种考研考证电子书、题库视频学习平台

第1章 绪 论
1.1 复习笔记
一、什么是数据结构 数据结构是一门研究非数值计算的程序设计问题中计算机的操作对象以及它们之间的 关系和操作等的学科。
二、基本概念和术语 1.数据 数据是对客观事物的符号表示,是计算机科学中所有能输入到计算机中并能被计算机程 序处理的符号的总称。
圣才电子书 十万种考研考证电子书、题库视频学习平台

构)。 其中,关系有两种表示方法:顺序映象和非顺序映象。这两种表示方法对应两种存储结 构:顺序存储结构和链式存储结构。 a.顺序映象:用相对位置来表示数据元素之间的逻辑关系。 b.非顺序映象:用指针表示数据元素之间的逻辑关系。
5 / 155
圣才电子书 十万种考研考证电子书、题库视频学习平台

象数据类型。 答:(1)数据是对客观事物的符号表示,在计算机科学中是指所有能输入到计算机中并 能被计算机程序处理的符号的总称。 (2)数据元素是数据的基本单位。 (3)数据对象是性质相同的数据元素的集合,是数据的一个子集。 (4)数据结构是相互之间存在一种或多种特定关系的数据元素的集合。 (5)存储结构是数据结构在计算机中的表示(又称映象或数据的物理结构)。 (6)数据类型是一个值的集合和定义在这个值集上的一组操作的总称。 (7)抽象数据类型是指一个数学模型以及定义在该模型上的一组操作。
3 / 155

数据结构 严蔚敏C语言版 学习复习提纲

数据结构 严蔚敏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串长度、空白串、空串。

数据结构期末复习要点(严蔚敏版)

数据结构期末复习要点(严蔚敏版)

数据结构期末复习要点第一章绪论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)理解二叉树遍历算法的递归代码,能够读懂代码含义。

数据结构-清华大学严蔚敏

数据结构-清华大学严蔚敏
④ 除最后一个元素外,每个元素均有唯一一个直接 后继。
精选ppt课件
4
2.2 线性表的顺序存储
顺序存储 :把线性表的结点按逻辑顺序依次存放 在一组地址连续的存储单元里。用这种方法存储的线性 表简称顺序表。
顺序存储的线性表的特点:
◆ 线性表中所有元素所占的存储空间是连续的; ◆ 数据元素在存储空间中是按逻辑顺序依次存放。 设有非空的线性表:(a1,a2,…an) 。顺序存储如图 2-1所示。
8
图2-2 链表结点结构
单链表是由表头唯一确定,因此单
链表可以用头指针的名字来命名。
1100
例1、线性表L=(bat,cat,eat,fat,
hat)
1300
其带头结点的单链表的逻辑状态和物理
存储方式如图2-3所示。
1305
head
3695
head
bat
cat
eat
fat
hat ⋀ 3700
图2-3 带头结点的单链表的逻辑精选状ppt课态件、物理存储方式
图2-6是带头结点的单循环链表的示意图。
head
head a1
a2
……
an
空表
非空表
图2-6 单循环链表精选示ppt意课件图
10
2.4 双向链表
双向链表(Double Linked List) :指的是构
成链表的每个结点中设立两个指针域:一个指向其直接 前趋的指针域prior,一个指向其直接后继的指针域 next。这样形成的链表中有两个方向不同的链,故称 为双向链表。
LOC(ai+1)=LOC(ai)+l
精选ppt课件
6
2.3 线性表的链式存储
2.3.1 线性表的链式存储结构

数据结构(C)严蔚敏——4

数据结构(C)严蔚敏——4
m*n-1
Data Structure 2013-7-10
a0,n-1 a1,n-1
…….. am-1 ,n-1
Page 9
5.3 矩阵的压缩存储
4 8 0 0 0
7 2 3 4
2 7 1 9
3 1 7 8
4 9 8 6
7 2 3 4
重点和难点

重点是学习数组类型的定义及其存储表示。
知识点

数组的类型定义、数组的存储表示、特殊矩阵的压缩存储表示方法、 随机稀疏矩阵的压缩存储表示方法。
Data Structure
2013-7-10
Page 1
5.1 数组的定义
数组是线性表的推广

数组可以看成是一种特殊的线性表,即线性表中数据元素本身也 是一个线性表。 a 01 a 02 ... a 0,n-1 a 00 a a11 a12 ... a1,n-1 列向量 10 A m×n = ... ... ... ... ... a m-1,0 a m-1,1 a m-1,2 ... a m-1,n-1
对称矩阵
n阶矩阵;
aij=aji
Data Structure
1i,j n
2013-7-10 Page 11
特殊矩阵

值相同的元素或者零元素在矩阵中的分布有一定规律。
7 2 3 4
0 7 1 9
0 0 7 8
0 0 0 6
三角矩阵
n阶矩阵; 下(上)三角矩阵:矩阵的上(下)三角(不 包括对角线)中的元均为常数c或零。
a 01 a 02 a11 a12 ... ... a m-1, a m-1,2 1

清华大学严蔚敏版数据结构考研要点(精华版)

清华大学严蔚敏版数据结构考研要点(精华版)

1、数据(Data) :是客观事物的符号表示。

在计算机科学中指的是所有能输入到计算机中并被计算机程序处理的符号的总称。

数据元素(Data Element):是数据的基本单位,在程序中通常作为一个整体来进行考虑和处理。

一个数据元素可由若干个数据项(Data Item)组成。

数据项是数据的不可分割的最小单位。

数据项是对客观事物某一方面特性的数据描述。

数据对象(Data Object):是性质相同的数据元素的集合,是数据的一个子集。

如字符集合C={‘A’,’B’,’C,…} 。

数据结构(Data Structure):是指相互之间具有(存在)一定联系(关系)的数据元素的集合。

元素之间的相互联系(关系)称为逻辑结构。

数据元素之间的逻辑结构有四种基本类型,如图1-3所示。

①集合:结构中的数据元素除了“同属于一个集合”外,没有其它关系。

②线性结构:结构中的数据元素之间存在一对一的关系。

③树型结构:结构中的数据元素之间存在一对多的关系。

④图状结构或网状结构:结构中的数据元素之间存在多对多的关系。

2、顺序结构:数据元素存放的地址是连续的;链式结构:数据元素存放的地址是否连续没有要求。

数据的逻辑结构和物理结构是密不可分的两个方面,一个算法的设计取决于所选定的逻辑结构,而算法的实现依赖于所采用的存储结构。

在C语言中,用一维数组表示顺序存储结构;用结构体类型表示链式存储结构。

3、C语言中用带指针的结构体类型来描述typedef struct Lnode{ ElemType data; /*数据域,保存结点的值*/struct Lnode *next; /*指针域*/}LNode; /*结点的类型*/4、循环队列为空:front=rear 。

循环队列满:(rear+1)%MAX_QUEUE_SIZE =front。

5、性质1:在非空二叉树中,第i层上至多有2i-1个结点(i≧1)。

性质2:深度为k的二叉树至多有2k-1个结点(k≧1) 。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一章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个评价标准是什么?特征:有穷性、确定性、可行性、输入、输出。

评价标准:正确性、可读性、健壮性、效率与低存储量需求。

7. 描述时间复杂度。

(1) x=0; y=0; z=0;for (i=1; i<=n; i++){ x++;for( j=1; j<=n; j++){ y++;for( k=0; k<=(2*n); k++ )z++;}}程序片段中语句x=0、x++、y++、z++的时间复杂度和整段程序的时间复杂度。

O(1)O(n)O(n^2)O(n^3)O(n^3)第二章线性表1. 描述线性结构的特点。

2. 判断对错,并解释说明。

(1)线性表中的数据元素可以是各种各样的,但同一线性表中的元素一定具有相同特性。

(2)线性表采用顺序存储表示时,必须占用一片连续的存储单元。

(3)线性表采用链式存储表示时,不能占用一片连续的存储单元。

3. 顺序表的第一个元素的存储地址是101,每个元素的长度为3,计算出第6个元素的存储地址是多少?LOC(a6)=LOC(a1)+5*L=101+5*3=1164. 长度为n的顺序表中,在第i个元素前插入一个新元素时,需要移动多少个元素?插入算法的平均移动次数是多少,时间复杂度是什么?参看书P24~25,需要移动n-i+1个元素,平均移动次数为n/2,时间复杂度是O(n)5. 长度为n的顺序表中,将第i个元素删除时,需要移动多少个元素?删除算法的平均移动次数是多少,时间复杂度是什么?参看书P24~25,需要移动n-i个元素,平均移动次数为(n-1)/2,时间复杂度是O(n)6.线性链表的存储特点是?单链表中的结点由哪两部分构成,画图说明。

7. 在一个单链表中,q所指结点是p所指结点的直接前驱结点,若在q与p之间插入一个s所指的结点,写出执行的两条语句(提示:先链接、后断开)。

s->next=p; q->next=s; 或者s->next=q->next; q->next=s;8. 在单链表中,w所指结点是s所指结点的直接前驱结点删除s结点,写出执行的两条语句。

w->next=s->next;free(s)9. 画图说明单循环链表为空的状态,并写出循环链表判断是否为空的语句。

参看书P35图2.12(b)判空语句H->next=H10. 双向链表中,要在指针q指向的结点后插入新结点t,写出执行的四条语句。

t->prior=q ; t->next=q->next ; q->next=t ; t->next->prior=s11. 双向链表中,要删除指针q的后继结点,写出执行的两条语句。

T=q->next ; q->next=t->next ; free(t); 或者t=q->next;q->next-q->next->next;free(t)第三章栈和队列1. 判断对错(1)栈和队列是操作受限的线性表。

(2)栈的插入操作只需要在表尾端进行,队列的插入操作只需要在表头进行。

(3)栈的操作只和栈顶指针TOP相关,队列的操作只和队头指针FRONT相关。

2. 栈的特点是?队列的特点是?(先进先出、先进后出中选择)栈的特点是先进后出(FILO)队列的特点是先进先出(FIFO)3. 用文字描述算法。

(参照我写的(1)的算法描述完成)(1)顺序存储的栈插入操作算法描述:(2)顺序栈的删除操作算法描述:(3)链式存储的队列的插入操作算法描述:(4)链栈的删除操作算法描述:4. 假设栈为S,写出判断语句typedef struct sqstack{int data[max];int top;}sqstack ;sqstack *s;(1)顺序栈为空的条件判断语句s->top= =0(2)顺序栈为满的条件判断语句s->top = =max5. 假设队列为Q,写出判断语句typedef struct SqQueue{int data[MAX];int front;int rear; /*定义队头指针Front 和队尾指针Rear*/};SqQueue *Q(1)循环队列为空的条件判断语句Q->rear= =Q->front(2)循环队列为满的条件判断语句(Q->rear+1)%MAX= =Q->front6. 总结说明,线性表的顺序存储与链式存储的区别?参看书P27第一段第六章树和二叉树1.一棵二叉树的广义表表示为a(b(c,d),e(f(,g))),它含有双亲结点(4)个,单分支结点(2)个,叶子结点(3)个。

二叉树根为a;a有左孩子b,右孩子e;b有左孩子c,右孩子d;e只有左孩子f,f只有右孩子g2.判断对错(1)在树中,如果从结点K出发,存在两条分别到达K`,K``的长度相等的路径,则结点K`,K``互为兄弟。

,还可能是堂兄结点(2)完全二叉树的某结点若无左孩子,则必是叶结点。

,由完全二叉树的性质决定(3)一棵完全二叉树按层次遍历的序列为ABCDEFGHI,则在后序遍历中结点B的直接后继是F。

由于是完全二叉树,所以树中第一层是A ,第二层从左向右是B和C,第三层是D、E、F、G,第四层从左向右是H和I。

画出二叉树,进行后序遍历,后序遍历序列为HIDEBFGCA。

(4)二叉树的后序遍历序列中,任意一个结点均处在其子树结点的后面。

后序遍历算法决定的,左、右、根(5)由二叉树结点的先根序列和后根序列可以唯一地确定一棵二叉树。

不唯一,因为只有在中序遍历中才能划分左右子树(6)树存储时采用双亲表示法时,求某个结点的孩子时需要遍历整个结构。

(7)一棵有n(n≥1)个结点的d叉树,若用多重链表表示,树中每个结点都有d个链域,则在树的nd个链域中,有n(d-1)+1个是空链域,只有n-1个是非空链域。

根据树的特性:一对多,每个结点都有且仅有一个双亲结点,除了根结点外。

因此,n个结点的树中有n-1个结点都有且仅有一个双亲,这个关系表示在链式存储里就一定会占用它双亲的一个指针域,所以树中一定有n-1个非空指针域,多叉树也适用。

(8)在一棵二叉树的二叉链表中,空指针域数等于非空指针域数加2。

解:二叉链表中有n个结点时,一定存在2n个指针域,n+1个空链域,则非空链域为n-1个,所以,空链域=非空链域+2(9)树的后根遍历序列等同于该树对应的二叉树的中序遍历。

,参看书P138笔记(10)树利用孩子兄弟表示法转换后的二叉树中根结点一定不存在右子树。

,参看书P137页最后一句话3.二叉树根结点的层次为1,所有含有15个结点的二叉树中,最小高度是( 4 )。

要想得出最小高度,必须是完全二叉树才能保证,因此这个题目考核的是有15个结点的完全二叉树的高度是?参看二叉树性质4,即可得出4.设一棵二叉树结点的先根序列为ABDECFGH,中根序列为DEBAFCHG,则二叉树中叶子结点是( E F H )。

参看书P154例题5.树的存储结构有几种?分别是?二叉树的存储结构有几种,分别是?树的存储结构有三种:双亲表示法、孩子表示法、孩子兄弟表示法二叉树的存储结构有两:顺序存储、链式存储(又叫二叉链表的表示法)在一棵二叉树的二叉链表中,空指针域数等于非空指针域数加( 2 )。

6.若二叉树有7个度为2的结点,试问有?个终端结点。

由二叉树的性质3得出,n0=n2+1,所以度为1的终端结点有7+1=8个7.一棵有124个叶结点的完全二叉树,最多有?个结点。

首先,由二叉树的性质3得出,度为2的结点个数为124-1=123个;又根据二叉树的定义可以得出这样的结论:完全二叉树的前n-1层8.一棵完全二叉树上有1001个结点,其中叶子结点的个数是?500解:设分支总数变量为b,则n=b+1,得出分支数为1000。

分支数是偶数,所以不存在度为1的结点,只有度为2的结点和叶子结点。

根据性质3,n0=n2+1,所以1001= n0+n2= 2*n0+1。

n0=500。

9.w={4,5,6,7,8},如何构建哈夫曼树?第9章查找1. 查找表的概念?这是四种经典数据结构中的哪一种?2. 静态查找和动态查找有什么联系和区别?3. 查找表中的关键字是数据元素还是数据项,有什么特点?4. ASL表示什么?写出计算的公式,并解释公式中每个变量的含义。

5. 描述顺序查找的算法思想(用汉字描述,不是代码)6. 描述折半查找的算法思想。

7. 给定由以下元素组成的关键字序列(55,46,89,13,24,67,23,15),将他们存储在数组的第1位至第8位,现在要查找关键字为15和100的元素。

描述查找过程。

8. 画出包含8个元素的查找表对应的折半判定树。

树的深度为?9.根据给定的序列(21,54,43,76,87,65,32),生成一棵二叉排序树,并分析该二叉排序树的平均查找长度ASL; 同时根据该序列,生成一棵平衡二叉树,并分析该平衡二叉树的平均查找长度ASL。

相关文档
最新文档