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