数据结构与算法总复习题.pptx





《数据结构与算法总复习题.pptx》由会员分享,可在线阅读,更多相关《数据结构与算法总复习题.pptx(176页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、一、填空题1.数据结构是一门研究非数值计算的程序设计问题中计算机的 操作对象 以及它们之间的 关系 和运算等的学科。第1页/共176页2.数据结构被形式地定义为(D,R),其中D是 数据元素 的有限集合,R是D上的 关系 有限集合。3.数据结构包括数据的 逻辑结构 、数据的 存储结构 、和数据的 运算 这三个方面的内容。第2页/共176页4.数据结构按逻辑结构可分为两大类,它们分别是 线性结构 和 非线性结构 。5.线性结构中元素之间存在 一对一 关系,树形结构中元素之间存在 一对多 关系,图形结构中元素之间存在多对多 关系。第3页/共176页6 在线性结构中,第一个结点 没有 前驱结点,其余
2、每个结点有且只有 1个前驱结点;最后一个结点 没有 后续结点,其余每个结点有且只有1个后续结点。第4页/共176页7.在树形结构中,树根结点没有 前驱 结点,其余每个结点有且只有 1 个前驱结点;叶子结点没有 后续 结点,其余每个结点的后续结点数可以 任意多个 。第5页/共176页8.在图形结构中,每个结点的前驱结点数和后续结点数可以 任意多个 。9数据的存储结构可用四种基本的存储方法表示,它们分别是 顺序 、链式、索引 和 散列 。第6页/共176页10.数据的运算最常用的有5种,它们分别是 插入、删除、修改、查找、排序 。11.一个算法的效率可分为 时间 效率和 空间 效率。第7页/共17
3、6页二、单项选择题(B )1.非线性结构是数据元素之间存在一种:A)一对多关系 B)多对多关系 C)多对一关系 D)一对一关系(C )2.数据结构中,与所使用的计算机无关的是数据的 结构;A)存储 B)物理 C)逻辑 D)物理和存储第8页/共176页(C )3.算法分析的目的是:A)找出数据结构的合理性 B)研究算法中的输入和输出的关系 C)分析算法的效率以求改进 D)分析算法的易懂性和文档性第9页/共176页(A )4.算法分析的两个主要方面是:A)空间复杂性和时间复杂性 B)正确性和简明性C)可读性和文档性 D)数据复杂性和程序复杂性第10页/共176页(C)5.计算机算法指的是:A)计算
4、方法 B)排序方法 C)解决问题的有限运算序列 D)调度方法第11页/共176页(B )6.计算机算法必须具备输入、输出和 等5个特性。A)可行性、可移植性和可扩充性 B)可行性、确定性和有穷性C)确定性、有穷性和稳定性 D)易读性、稳定性和安全性第12页/共176页三、简答题1.数据结构和数据类型两个概念之间有区别吗?答:简单地说,数据结构定义了一组按某些关系结合在一起的数组元素。数据类型不仅定义了一组带结构的数据元素,而且还在其上定义了一组操作。第13页/共176页2.简述线性结构与非线性结构的不同点。答:线性结构反映结点间的逻辑关系是 一对一的,非线性结构反映结点间的逻辑关系是多对多的。
5、第14页/共176页3.算法的定义和特性。算法是解决特定问题的有限指令序列。特性:有限性、确定性、可行性、有0个或多个输入数据、有1个或多个输出结果。第15页/共176页4.数据结构的逻辑结构有哪四类?集合结构、线性结构、树形结构、图形结构线性结构的前驱与后继之间为一对一关系,非线性结构的前驱与后继之间通常为一对多或多对多关系。第16页/共176页第二章 线性表习题1 顺序表中逻辑上相邻的元素的物理位置 相邻。单链表中逻辑上相邻的元素的物理位置 相邻。第17页/共176页一定不一定第18页/共176页2 在单链表中,除了首元结点外,任一结点的存储位置由其直接前驱结点的链域的值指示。第19页/共
6、176页3.线性表中结点间的关系是 一对一 的。第20页/共176页判断题()1.链表的每个结点中都恰好包含一个指针。答:错误。链表中的结点可含多个指针域,分别存放多个指针。例如,双向链表中的结点可以含有两个指针域,分别存放指向其直接前趋和直接后继结点的指针。第21页/共176页()2.链表的删除算法很简单,因为当删除链中某个结点后,计算机会自动地将后续的各个单元向前移动。错,链表的结点不会移动,只是指针内容改变。第22页/共176页()3.线性表的每个结点只能是一个简单类型,而链表的每个结点可以是一个复杂类型。错,混淆了逻辑结构与物理结构,链表也是线性表!且即使是顺序表,也能存放记录型数据。
7、第23页/共176页()4.顺序表结构适宜于进行顺序存取,而链表适宜于进行随机存取。错,正好说反了。顺序表才适合随机存取,链表恰恰适于“顺藤摸瓜”第24页/共176页()5.顺序存储方式的优点是存储密度大,且插入、删除运算效率高。错,前一半正确,但后一半说法错误,那是链式存储的优点。顺序存储方式插入、删除运算效率较低,在表长为n的顺序表中,插入和删除一个数据元素,平均需移动表长一半个数的数据元素。第25页/共176页()8.线性表在顺序存储时,逻辑上相邻的元素未必在存储的物理位置次序上相邻。错误。线性表有两种存储方式,在顺序存储时,逻辑上相邻的元素在存储的物理位置次序上也相邻。第26页/共17
8、6页单项选择题()1数据在计算机存储器内表示时,物理地址与逻辑地址相同并且是连续的,称之为:(A)存储结构 (B)逻辑结构 (C)顺序存储结构 (D)链式存储结构第27页/共176页C第28页/共176页()2.一个向量第一个元素的存储地址是100,每个元素的长度为2,则第5个元素的地址是 (A)110 (B)108 (C)100 (D)120第29页/共176页B第30页/共176页()5.链接存储的存储结构所占存储空间:A 分两部分,一部分存放结点值,另一部分存放表示结点间关系的指针B 只有一部分,存放结点值C 只有一部分,存储表示结点间关系的指针D 分两部分,一部分存放结点值,另一部分存
9、放结点所占单元数 第31页/共176页A第32页/共176页()6.链表是一种采用 存储结构存储的线性表;(A)顺序 (B)链式 (C)星式 (D)网状第33页/共176页B第34页/共176页()7.线性表若采用链式存储结构时,要求内存中可用存储单元的地址:(A)必须是连续的 (B)部分地址必须是连续的(C)一定是不连续的 (D)连续或不连续都可以第35页/共176页D第36页/共176页()8 线性表在 情况下适用于使用链式结构实现。()需经常修改线性表中的结点值 ()需不断对线性表进行删除插入()线性表中含有大量的结点 ()线性表中结点结构复杂第37页/共176页B第38页/共176页(
10、)10 设a1、a2、a3为3个结点,整数P0,3,4代表地址,则如下的链式存储结构称为()循环链表 ()单链表 ()双向循环链表 ()双向链表第39页/共176页B第40页/共176页简答题1.【严题集2.3】试比较顺序存储结构和链式存储结构的优缺点。在什么情况下用顺序表比链表好?第41页/共176页答:顺序存储时,相邻数据元素的存放地址也相邻(逻辑与物理统一);要求内存中可用存储单元的地址必须是连续的。优点:存储空间利用率高。缺点:插入或删除元素时不方便。第42页/共176页链式存储时,相邻数据元素可随意存放,但所占存储空间分两部分,一部分存放结点值,另一部分存放表示结点间关系的指针优点:
11、插入或删除元素时很方便,使用灵活。缺点:存储空间利用率低。第43页/共176页顺序表适宜于做查找这样的静态操作;链表宜于做插入、删除这样的动态操作。若线性表的长度变化不大,且其主要操作是查找,则采用顺序表;若线性表的长度变化较大,且其主要操作是插入、删除操作,则采用链表。第44页/共176页第三章第45页/共176页1.向量(线性表)、栈和队列都是 结构,可以在向量的 位置插入和删除元素;对于栈只能在 插入和删除元素;对于队列只能在 插入和 删除元素。第46页/共176页1、向量、栈和队列都是 线性 结构,可以在向量的 任何 位置插入和删除元素;对于栈只能在 栈顶 插入和删除元素;对于队列只能
12、在 队尾 插入和 队首 删除元素。第47页/共176页2.栈是一种特殊的线性表,允许插入和删除运算的一端称为 。不允许插入和删除运算的一端称为 。第48页/共176页2.栈是一种特殊的线性表,允许插入和删除运算的一端称为 栈顶 。不允许插入和删除运算的一端称为 栈底 。第49页/共176页3.是被限定为只能在表的一端进行插入运算,在表的另一端进行删除运算的线性表。第50页/共176页3.队列 是被限定为只能在表的一端进行插入运算,在表的另一端进行删除运算的线性表。第51页/共176页二、判断正误(判断下列概念的正确性,并作出简要的说明。)()1.线性表的每个结点只能是一个简单类型,而链表的每个
13、结点可以是一个复杂类型。第52页/共176页二、判断正误(判断下列概念的正确性,并作出简要的说明。)()1.线性表的每个结点只能是一个简单类型,而链表的每个结点可以是一个复杂类型。错,线性表是逻辑结构概念,可以顺序存储或链式存储,与元素数据类型无关。第53页/共176页()2.在表结构中最常用的是线性表,栈和队列不太常用。第54页/共176页()2.在表结构中最常用的是线性表,栈和队列不太常用。错,不一定吧?调用子程序或函数常用,CPU中也用队列。第55页/共176页()3.栈是一种对所有插入、删除操作限于在表的一端进行的线性表,是一种后进先出型结构。第56页/共176页()3.栈是一种对所有
14、插入、删除操作限于在表的一端进行的线性表,是一种后进先出型结构。第57页/共176页()6.栈和队列是一种非线性数据结构。第58页/共176页()6.栈和队列是一种非线性数据结构。错,他们都是线性逻辑结构,栈和队列其实是特殊的线性表,对运算的定义略有不同而已。第59页/共176页()7.栈和队列的存储方式既可是顺序方式,也可是链接方式。第60页/共176页()7.栈和队列的存储方式既可是顺序方式,也可是链接方式。第61页/共176页()8.队是一种插入与删除操作分别在表的两端进行的线性表,是一种先进后出型结构。第62页/共176页()8.队是一种插入与删除操作分别在表的两端进行的线性表,是一种
15、先进后出型结构。错,后半句不对。第63页/共176页()9.一个栈的输入序列是12345,则栈的输出序列不可能是12345。第64页/共176页()9.一个栈的输入序列是12345,则栈的输出序列不可能是12345。错,有可能。第65页/共176页三、单项选择题()1.栈中元素的进出原则是 先进先出 后进先出 栈空则进 栈满则出第66页/共176页三、单项选择题(B )1.栈中元素的进出原则是 先进先出 后进先出 栈空则进 栈满则出第67页/共176页6.【初程P71】从供选择的答案中,选出应填入下面叙述 内的最确切的解答,把相应编号写在答卷的对应栏内。设有4个数据元素a1、a2、a3和a4,
16、对他们分别进行栈操作或队操作。在进栈或进队操作时,按a1、a2、a3、a4次序每次进入一个元素。假设栈或队的初始状态都是空。第68页/共176页现要进行的栈操作是进栈两次,出栈一次,再进栈两次,出栈一次;这时,第一次出栈得到的元素是 A ,第二次出栈得到的元素是 B 是;类似地,考虑对这四个数据元素进行的队操作是进队两次,出队一次,再进队两次,出队一次;这时,第一次出队得到的元素是 C ,第二次出队得到的元素是 D 。经操作后,最后在栈中或队中的元素还有 E 个。供选择的答案:AD:a1 a2 a3 a4E:1 2 3 0第69页/共176页答:ABCDE2,4,1,2,2第70页/共176页
17、第五章1.假设有二维数组A68,每个元素用相邻的6个字节存储,存储器按字节编址。已知A的起始存储位置(基地址)为1000,则数组A的体积(存储量)为 ;末尾元素A57的第一个字节地址为 ;若按行存储时,元素A14的第一个字节地址为 ;若按列存储时,元素A47的第一个字节地址为 。第71页/共176页1.假设有二维数组A68,每个元素用相邻的6个字节存储,存储器按字节编址。已知A的起始存储位置(基地址)为1000,则数组A的体积(存储量)为 288 B ;末尾元素A57的第一个字节地址为 1282 ;若按行存储时,元素A14的第一个字节地址为 (8+4)6+1000=1072 ;若按列存储时,元
18、素A47的第一个字节地址为 (674)61000)1276 。(注:数组是从0行0列还是从1行1列计算起呢?由末单元为A57可知,是从0行0列开始!)第72页/共176页2.三元素组表中的每个结点对应于稀疏矩阵的一个非零元素,它包含有三个数据项,分别表示该元素的 、和 。第73页/共176页2.三元素组表中的每个结点对应于稀疏矩阵的一个非零元素,它包含有三个数据项,分别表示该元素的 行下标 、列下标 和 元素值 。第74页/共176页5.用三元组表表示下列稀疏矩阵:第75页/共176页解:三元素组表中的每个结点对应于稀疏矩阵的一个非零元素,它包含有三个数据项,分别表示该元素的 行下标 、列下标
19、 和 元素值 。588521325843667570266405-2149325543第76页/共176页6 下列各三元组表分别表示一个稀疏矩阵,试写出它们的稀疏矩阵。455001139218246327第77页/共176页6 答:为45矩阵,非零元素有5个1 0 0 0 00 0 0 9 00 8 0 0 60 0 7 0 0第78页/共176页第六章 一、下面是有关二叉树的叙述,请判断正误()1.若二叉树用二叉链表作存贮结构,则在n个结点的二叉树链表中只有n1个非空指针域。第79页/共176页()1.若二叉树用二叉链表作存贮结构,则在n个结点的二叉树链表中只有n1个非空指针域。第80页/共
20、176页()2.二叉树中每个结点的两棵子树的高度差等于1。()3.二叉树中每个结点的两棵子树是有序的。第81页/共176页()2.二叉树中每个结点的两棵子树的高度差等于1。()3.二叉树中每个结点的两棵子树是有序的。第82页/共176页()4.二叉树中每个结点的关键字值大于其左非空子树(若存在的话)所有结点的关键字值,且小于其右非空子树(若存在的话)所有结点的关键字值。第83页/共176页()4.二叉树中每个结点的关键字值大于其左非空子树(若存在的话)所有结点的关键字值,且小于其右非空子树(若存在的话)所有结点的关键字值。(没有这个要求)第84页/共176页()5.对于一棵非空二叉树,它的根结
21、点作为第一层,则它的第i层上最多能有 个结点。第85页/共176页()5.对于一棵非空二叉树,它的根结点作为第一层,则它的第i层上最多能有2i 1个结点。(应 )第86页/共176页()6.用二叉链表法(link-rlink)存储包含n个结点的二叉树,结点的2n个指针区域中有n+1个为空指针。第87页/共176页()6.用二叉链表法(link-rlink)存储包含n个结点的二叉树,结点的2n个指针区域中有n+1个为空指针。(正确。用二叉链表存储包含n个结点的二叉树,结点共有2n个链域。由于二叉树中,除根结点外,每一个结点有且仅有一个双亲,所以只有n-1个结点的链域存放指向非空子女结点的指针,还
22、有n+1个空指针。)即有后继链接的指针仅n-1个。第88页/共176页二、填空1 由个结点所构成的二叉树有 种形态。2.一棵深度为6的满二叉树有 个分支结点和 个叶子。第89页/共176页1 由个结点所构成的二叉树有 5 种形态。2.【计算机研】一棵深度为6的满二叉树有 n1+n2=0+n2=n0-1=31 个分支结点和 26-1=32 个叶子。注:满二叉树没有度为1的结点,所以分支结点数就是二度结点数。第90页/共176页3.二叉树的基本组成部分是:根(N)、左子树(L)和右子树(R)。因而二叉树的遍历次序有六种。最常用的是三种:前序法(即按N L R次序),后序法(即按 次序)和中序法(也
23、称对称序法,即按L N R次序)。这三种方法相互之间有关联。若已知一棵二叉树的前序序列是BEFCGDH,中序序列是FEBGCHD,则它的后序序列必是 。第91页/共176页3.二叉树的基本组成部分是:根(N)、左子树(L)和右子树(R)。因而二叉树的遍历次序有六种。最常用的是三种:前序法(即按N L R次序),后序法(即按 L R N 次序)和中序法(也称对称序法,即按L N R次序)。这三种方法相互之间有关联。若已知一棵二叉树的前序序列是BEFCGDH,中序序列是FEBGCHD,则它的后序序列必是 F E G H D C B 。解:法1:先由已知条件画图,再后序遍历得到结果;法2:不画图也能
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 算法 复习题

限制150内