数据结构基本复习题答案

合集下载

数据结构复习习题和答案(DOC)

数据结构复习习题和答案(DOC)

第一章绪论一、单项选择题1.数据结构是一门研究非数值计算的程序设计问题中计算机的①以及它们之间的②和操作等的学科。

① A.操作对象 B.计算方法 C·逻辑存储 D.数据映象② A.结构 B.关系 C.运算. D.算法2.数据结构被形式地定义为(D,R),其中D是①的有限集合,R是D上的②有限集合。

① A.算法 B.数据元素 C.数据操作 D.逻辑结构② A.操作 B.映象 C、存储 D.关系3.在数据结构中,从逻辑上可以把数据结构分成()。

A.动态结构和静态结构 B.紧凑结构和非紧凑结构C.线性结构和非线性结构 D.内部结构和外部结构4·算法分析的目的是①,算法分析的两个主要方面是②。

① A. 找出数据结构的合理性 B.研究算法中的输入和输出的关系C. 分析算法的效率以求改进D. 分析算法的易懂性和文档性② A. 空间复杂性和时间复杂性 B.正确性和简明性C.可读性和文档性 D.数据复杂性和程序复杂性5.计算机算法指的是①,它必具备输入、输出和②等五个特性。

① A. 计算方法 B.排序方法 C. 解决问题的有限运算序列 D.调度方法② A. 可行性、可移植性和可扩充性 B. 可行性、确定性和有穷性C. 确定性、有穷性和稳定性 D.易读性、稳定性和安全性6. 线性表的逻辑顺序与存储顺序总是一致的,这种说法()。

A. 正确 B.不正确7. 线性表若采用链式存储结构时,要求内存中可用存储单元的地址()。

A. 必须是连续的 B.部分地址必须是连续的C. 一定是不连续的D. 连续或不连续都可以8.数据结构通常是研究数据的()及它们之间的相互联系。

A.存储和逻辑结构 B.存储和抽象C.理想与抽象 D.理想与逻辑9.数据在计算机存储器内表示时,物理地址与逻辑地址相同并且是连续的,称之为()。

A.存储结构 B.逻辑结构 C.顺序存储结构 D.链式存储结构11.非线性结构是数据元素之间存在一种()。

数据结构试题集(包含答案-完整版)

数据结构试题集(包含答案-完整版)

数据结构试题集(包含答案-完整版)数据结构试题集(包含答案-完整版)1. 单选题1) 数据结构是一种()。

a) 存储结构b) 算法c) 数据模型d) 网络答案:c) 数据模型解析:数据结构是一种用于组织和存储数据的方式,描述了数据之间的关系以及对数据的操作。

2) 以下哪种数据结构可以通过索引直接访问元素?a) 链表b) 队列c) 栈d) 数组答案:d) 数组解析:数组是一种线性数据结构,可以通过索引直接访问指定位置的元素。

2. 多选题1) 哪些数据结构属于非线性结构?()a) 队列b) 树c) 栈d) 图答案:b) 树d) 图解析:线性结构中的元素存在一对一的关系,非线性结构中的元素存在一对多或多对多的关系,树和图属于非线性结构。

2) 下列哪些操作可以在栈上进行?()a) 入栈b) 出栈c) 查找d) 删除答案:a) 入栈b) 出栈解析:栈是一种后进先出(LIFO)的数据结构,只能在栈顶进行插入和删除操作。

3. 简答题1) 请简要介绍线性表和非线性表。

答案:线性表是数据元素的一个有限序列,元素之间存在一对一的关系。

非线性表是指元素之间存在一对多或多对多的关系,如树和图。

2) 请解释什么是时间复杂度和空间复杂度。

答案:时间复杂度是衡量算法执行效率的度量,表示算法的运行时间随输入规模增长的速度。

空间复杂度是指算法执行过程中所需的存储空间随输入规模增长的速度。

4. 编程题题目:实现一个栈,包含push、pop和getMin三个操作,要求时间复杂度为O(1)。

答案:class MinStack:def __init__(self):self.stack = []self.min_stack = []def push(self, x):self.stack.append(x)if not self.min_stack or x <= self.min_stack[-1]:self.min_stack.append(x)def pop(self):if self.stack.pop() == self.min_stack[-1]:self.min_stack.pop()def getMin(self):return self.min_stack[-1]解析:在栈的基础上,使用一个辅助栈min_stack来记录当前栈中的最小值。

数据结构复习题及答案5篇

数据结构复习题及答案5篇

数据结构复习题及答案5篇第一篇:数据结构复习题及答案、数据结构复习题及答案中南大学现代远程教育课程考试(专科)复习题及参考答案数据结构一、判断题:1.数组是一种复杂的数据结构,数组元素之间的关系既不是线性的也不是树形的。

()2.链式存储在插人和删除时需要保持物理存储空间的顺序分配,不需要保持数据元素之间的逻辑顺序。

()3.在只有度为0和度为k的结点的k叉树中,设度为0的结点有n0个,度为k的结点有nk个,则有n0=nk+1。

()4.折半搜索只适用于有序表,包括有序的顺序表和有序的链表。

()5.如果两个串含有相同的字符,则这两个串相等。

()6.数组可以看成线性结构的一种推广,因此可以对它进行插入、删除等运算。

()7.在用循环单链表表示的链式队列中,可以不设队头指针,仅在链尾设置队尾指针。

()8.通常递归的算法简单、易懂、容易编写,而且执行的效率也高。

()9.一个广义表的表尾总是一个广义表。

()10.当从一个小根堆(最小堆)中删除一个元素时,需要把堆尾元素填补到堆顶位置,然后再按条件把它逐层向下调整,直到调整到合适位置为止。

()11.对于一棵具有n个结点,其高度为h的二叉树,进行任一种次序遍历的时间复杂度为O(h)。

()12.存储图的邻接矩阵中,邻接矩阵的大小不但与图的顶点个数有关,而且与图的边数也有关。

()13.直接选择排序是一种稳定的排序方法。

()14.闭散列法通常比开散列法时间效率更高。

()15.有n个结点的不同的二叉树有n!棵。

()16.直接选择排序是一种不稳定的排序方法。

()17.在2048个互不相同的关键码中选择最小的5个关键码,用堆排序比用锦标赛排序更快。

()18.当3阶B_树中有255个关键码时,其最大高度(包括失败结点层)不超过8。

()19.一棵3阶B_树是平衡的3路搜索树,反之,一棵平衡的3路搜索树是3阶非B_树。

()20.在用散列表存储关键码集合时,可以用双散列法寻找下一个空桶。

数据结构复习题(附答案)

数据结构复习题(附答案)

数据结构复习题(附答案)1. 快速排序在最坏情况下的时间复杂度为( D )。

A.O(log2n) B.O(nlog2n) C.O (n) D. O (n2)2.设⼀棵⼆叉树的深度为k,则该⼆叉树中最多有( D )个结点。

A. 2k-1B. 2kC.2k-1D. 2k-13.⼆叉树中第i(i≥1)层上的结点数最多有( C )个。

A. 2iB. 2iC. 2i-1D. 2i-1 4.设指针变量p指向单链表结点A,则删除结点A的后继结点B需要的操作为( A )。

A. p->next=p->next->nextB. p=p->nextC. p=p->next->nextD. p->next=p5.设栈S和队列Q的初始状态为空,元素E1、E2、E3、E4、E5和E6依次通过栈S,⼀个元素出栈后即进⼊队列Q,若6个元素出列的顺序为E2、E4、E3、E6、E5和E1,则栈S的容量⾄少应该是( C )。

A. 6B. 4C. 3D. 26.设有以下四种排序⽅法,则( B )的空间复杂度最⼤。

A. 冒泡排序B. 快速排C. 堆排序D. 希尔排序7.设结点A有3个兄弟结点且结点B为结点A的双亲结点,则结点B的度数数为( B )。

A. 3B. 4C. 5D. 18.根据⼆叉树的定义可知⼆叉树共有( B )种不同的形态。

A. 4B. 5C. 6D. 79.对⼀个算法的评价,不包括如下( A )⽅⾯的内容。

A.并⾏性 B.健壮性和可读性 C.正确性 D.时空复杂度10.在⼆叉排序树中插⼊⼀个结点的时间复杂度为( C )。

A.O(1) B.O(n) C.O(log2n) D.O(n2)11. 队列是⼀种( B )的线性表。

A.先进后出B.先进先出 C.只能插⼊D.只能删除12.采⽤开放定址法处理散列表的冲突时,其平均查找长度( C )。

A.低于链接法处理冲突 B. 与链接法处理冲突相同C.⾼于链接法处理冲突 D.⾼于⼆分查找13.设有序顺序表中有n个数据元素,则利⽤⼆分查找法查找数据元素X的最多⽐较次数不超过( A )。

(完整版)数据结构复习题(附答案)

(完整版)数据结构复习题(附答案)

一、算法设计题(每题15分,共60分)答题要求:①用自然语言说明所采用算法的思想;②给出每个算法所需的数据结构定义,并做必要说明;③写出对应的算法程序,并做必要的注释。

1、有一个带头结点的单链表,每个结点包括两个域,一个是整型域info,另一个是指向下一个结点的指针域next。

假设单链表已建立,设计算法删除单链表中所有重复出现的结点,使得info域相等的结点只保留一个。

3、约瑟夫环问题(Josephus问题)是指编号为1、2、…,n的n(n>0)个人按顺时针方向围坐成一圈,现从第s个人开始按顺时针方向报数,数到第m个人出列,然后从出列的下一个人重新开始报数,数到第m的人又出列,…,如此重复直到所有的人全部出列为止。

现要求采用循环链表结构设计一个算法,模拟此过程。

4、编程实现单链表的就地逆置。

23.在数组 A[1..n]中有n个数据,试建立一个带有头结点的循环链表,头指针为h,要求链中数据从小到大排列,重复的数据在链中只保存一个.5、设计一个尽可能的高效算法输出单链表的倒数第K个元素。

3、假设以I和O分别表示入栈和出栈操作。

栈的初态和终态均为空,入栈和出栈的操作序列可表示为仅由I和O组成的序列,称可以操作的序列为合法序列,否则称为非法序列。

(15分)(1)下面所示的序列中哪些是合法的?A. IOIIOIOOB. IOOIOIIOC. IIIOIOIOD. IIIOOIOO(2)通过对(1)的分析,写出一个算法,判定所给的操作序列是否合法。

若合法,返回true,否则返回false(假定被判定的操作序列已存入一维数组中)。

5、设从键盘输入一整数的序列:a1, a2, a3,…,an,试编写算法实现:用栈结构存储输入的整数,当ai≠-1时,将ai进栈;当ai=-1时,输出栈顶整数并出栈。

算法应对异常情况(入栈满等)给出相应的信息。

设有一个背包可以放入的物品重量为S,现有n件物品,重量分别为W1,W2,...,W n。

数据结构复习题及参考答案

数据结构复习题及参考答案

《数据结构》课程复习资料一、填空题:1.设需要对5个不同的记录关键字进行排序,则至少需要比较________次,至多需要比较__________次。

2.设二叉排序树的高度为h,则在该树中查找关键字key最多需要比较_________次。

3.设在长度为20的有序表中进行二分查找,则比较一次查找成功的结点数有_________个,比较两次查找成功有结点数有_________个。

4.数据结构从逻辑上划分为三种基本类型:___________、__________和___________。

5.在一个具有n个顶点的无向完全图中,包含有________条边,在一个具有n个顶点的有向完全图中,包含有________条边。

6.向一棵B_树插入元素的过程中,若最终引起树根结点的分裂,则新树比原树的高度___________。

7.在堆排序的过程中,对任一分支结点进行筛运算的时间复杂度为________,整个堆排序过程的时间复杂度为________。

8.在快速排序、堆排序、归并排序中,_________排序是稳定的。

9.在有n个叶子结点的哈夫曼树中,总结点数是_______。

10.一棵树T采用二叉链表存储,如果树T中某结点为叶子结点,则在二叉链表BT中所对应的结点一定_______。

11.3.已知数组A[10][10]为对称矩阵,其中每个元素占5个单元。

现将其下三角部分按行优先次序存储在起始地址为1000的连续的内存单元中,则元素A[5,6]对应的地址是_______。

12.在有n个结点的无向图中,其边数最多为_______。

13.取出广义表A=(x,(a,b,c,d))中原子x的函数是_______。

14.对矩阵采用压缩存储是为了___ ____。

15.带头结点的双循环链表L为空表的条件是_______。

16.设线性表中元素的类型是实型,其首地址为1024,则线性表中第6个元素的存储位置是。

17.对于顺序存储的栈,因为栈的空间是有限的,在进行运算时,可能发生栈的上溢,在进行运算时,可能发生栈的下溢。

数据结构试题(含答案)

数据结构试题(含答案)

数据结构试题一、单选题1、在数据结构的讨论中把数据结构从逻辑上分为(C )A 内部结构与外部结构B 静态结构与动态结构C 线性结构与非线性结构D 紧凑结构与非紧凑结构。

2、采用线性链表表示一个向量时,要求占用的存储空间地址(D )A 必须是连续的B 部分地址必须是连续的C 一定是不连续的D 可连续可不连续3、采用顺序搜索方法查找长度为n的顺序表时,搜索成功的平均搜索长度为( D )。

A nB n/2C (n-1)/2D (n+1)/24、在一个单链表中,若q结点是p结点的前驱结点,若在q与p之间插入结点s,则执行( D )。

A s→link = p→link;p→link = s;B p→link = s; s→link = q;C p→link = s→link;s→link = p;D q→link = s;s→link = p;5、如果想在4092个数据中只需要选择其中最小的5个,采用( C )方法最好。

A 起泡排序B 堆排序C 锦标赛排序D 快速排序6、设有两个串t和p,求p在t中首次出现的位置的运算叫做( B )。

A 求子串B 模式匹配C 串替换D 串连接7、在数组A中,每一个数组元素A[i][j]占用3个存储字,行下标i从1到8,列下标j从1到10。

所有数组元素相继存放于一个连续的存储空间中,则存放该数组至少需要的存储字数是( C )。

A 80B 100C 240D 2708、将一个递归算法改为对应的非递归算法时,通常需要使用( A )。

A 栈B 队列C 循环队列D 优先队列9、一个队列的进队列顺序是1, 2, 3, 4,则出队列顺序为( C )。

10、在循环队列中用数组A[0..m-1] 存放队列元素,其队头和队尾指针分别为front和rear,则当前队列中的元素个数是( D )。

A ( front - rear + 1) % mB ( rear - front + 1) % mC ( front - rear + m) % mD ( rear - front + m) % m11、一个数组元素a[i]与( A )的表示等价。

数据结构复习题答案

数据结构复习题答案

数据结构复习题答案数据结构复习题答案⼀、选择题1.栈和队列的共同特点是( )。

A.只允许在端点处插⼊和删除元素B.都是先进后出C.都是先进先出D.没有共同点2.⽤链接⽅式存储的队列,在进⾏插⼊运算时( ).A. 仅修改头指针B. 头、尾指针都要修改C. 仅修改尾指针D.头、尾指针可能都要修改3.以下数据结构中哪⼀个是⾮线性结构?( )A. 队列B. 栈C. 线性表 D. ⼆叉树4.设有⼀个⼆维数组A[m][n],假设A[0][0]存放位置在644,A[2][2]存放位置在676(10),每个(10)元素占⼀个空间,问A[3][3](10)存放在()位置,脚注表⽰⽤10进制表⽰。

(10)A.688 B.678 C.692 D.6965.树最适合⽤来表⽰( )。

A.有序数据元素B.⽆序数据元素C.元素之间具有分⽀层次关系的数据D.元素之间⽆联系的数据6.⼆叉树的第k层的结点数最多为( ).A.2k-1 B.2K+1 C.2K-1D. 2k-17.若有18个元素的有序表存放在⼀维数组A[19]中,第⼀个元素放A[1]中,现进⾏⼆分查找,则查找A[3]的⽐较序列的下标依次为( )A. 1,2,3B. 9,5,2,3C. 9,5,3D. 9,4,2,38.对n个记录的⽂件进⾏快速排序,所需要的辅助存储空间⼤致为( )A. O(1)B. O(n)C. On) D. O(n2)(1og29.对于线性表(7,34,55,25,64,46,20,10)进⾏散列存储时,若选⽤H(K)=K %9作为散列函数,则散列地址为1的元素有()个,A.1 B.2 C.3 D.410.设有6个结点的⽆向图,该图⾄少应有( )条边才能确保是⼀个连通图。

A.5B.6C.7D.811.⼀个链队列中,f,r分别为队⾸、队尾指针,则插⼊s所指结点的操作为( )。

A)f->next=c;f=s; B)r->next=s;r=s;C)s->next=r;r=s; D)s->next=f;f=s;12.下列说法正确的是()。

数据结构考试题及答案

数据结构考试题及答案

数据结构考试题及答案一、选择题1. 下列哪种数据结构是一种线性结构?A. 树B. 栈C. 图D. 队列答案:B. 栈2. 以下哪种不是二叉树的遍历方式?A. 先序遍历B. 层序遍历C. 后序遍历D. 中序遍历答案:B. 层序遍历3. 在队列中,哪种操作不是O(1)时间复杂度的?A. 入队B. 出队C. 判空D. 获取队首元素答案:D. 获取队首元素二、填空题4. 二叉查找树的中序遍历结果为_______。

答案:升序排列的序列5. 栈的特点是_______进,_______出。

答案:后进,先出6. 图中两点间存在边则称它们为_______。

答案:邻接点三、简答题7. 请简要介绍一下栈和队列的应用场景及区别。

答:栈和队列都是常用的数据结构,栈适合用于实现括号匹配、表达式求值等场景,而队列常用于实现广度优先搜索、缓存队列等。

栈是一种后进先出的数据结构,而队列是一种先进先出的数据结构。

8. 什么是哈希表?它的优缺点分别是什么?答:哈希表是一种通过哈希函数将关键字映射到数组位置的数据结构。

其优点是能够快速查找、插入、删除元素,时间复杂度接近O(1);缺点是可能发生哈希冲突,导致性能下降。

四、综合题9. 给定以下无向图的邻接矩阵表示,请写出图的深度优先搜索(DFS)遍历路径。

```0 1 2 30 0 1 0 11 1 0 1 12 0 1 0 13 1 1 1 0```答:起始节点为0,路径:0 - 1 - 3 - 210. 写出以下树的层序遍历结果。

```1/ \2 3/ \ / \4 5 6 7```答:1 - 2 - 3 - 4 - 5 - 6 - 7以上就是数据结构考试题及答案,希望对您有所帮助。

如果有不清楚的地方,欢迎随时向老师询问。

祝您考试顺利!。

数据结构复习题 有答案的打印版

数据结构复习题 有答案的打印版

一、选择题1.下面关于线性表的叙述中,错误的是哪一个?( B )A.线性表采用顺序存储,必须占用一片连续的存储单元。

B.线性表采用顺序存储,便于进行插入和删除操作。

C.线性表采用链接存储,不必占用一片连续的存储单元。

D.线性表采用链接存储,便于插入和删除操作。

3.线性表是具有n个( C )的有限序列(n>0)。

A.表元素B.字符C.数据元素D.数据项E.信息项2.若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用( A )存储方式最节省时间。

A.顺序表B.双链表C.带头结点的双循环链表D.单循环链表3.某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用( D )存储方式最节省运算时间。

A.单链表B.仅有头指针的单循环链表C.双链表D.仅有尾指针的单循环链表4. 静态链表中指针表示的是( C ).A.内存地址B.数组下标C.下一元素地址D.左、右孩子地址5. 链表不具有的特点是( B )A.插入、删除不需要移动元素B.可随机访问任一元素C.不必事先估计存储空间D.所需空间与线性长度成正比1. 对于栈操作数据的原则是(B )。

A. 先进先出B. 后进先出C. 后进后出D. 不分顺序2. 有六个元素6,5,4,3,2,1 的顺序进栈,问下列哪一个不是合法的出栈序列?( A )A. 5 4 3 6 1 2B. 4 5 3 1 2 6C. 3 4 6 5 2 1D. 2 3 41 5 63. 设栈的输入序列是1,2,3,4,则(D )不可能是其出栈序列。

A. 1,2,4,3,B. 2,1,3,4,C. 1,4,3,2,D. 4,3,1,2,E. 3,2,1,4,1. 已知数组A[0..9,0..9]的每个元素占5个存储单元,将其按行优先次序存储在起始地址为1000的连续的内存单元中,求A[6,8]的地址。

13402. 已知二维数组A[1..10,0..9]中每个元素占4个单元,在按行优先方式将其存储到起始地址为1000的连续存储区域时,求A[5,9]的地址。

数据结构复习参考题与参考答案

数据结构复习参考题与参考答案

第一章概论自测题答案一、填空题1. 数据结构是一门研究非数值计算的程序设计问题中计算机的操作对象以及它们之间的关系和运算等的学科。

2. 数据结构被形式地定义为(D, R),其中D是数据元素的有限集合,R是D上的关系有限集合。

3. 数据结构包括数据的逻辑结构、数据的存储结构和数据的运算这三个方面的内容。

4. 数据结构按逻辑结构可分为两大类,它们分别是线性结构和非线性结构。

5. 线性结构中元素之间存在一对一关系,树形结构中元素之间存在一对多关系,图形结构中元素之间存在多对多关系。

6.在线性结构中,第一个结点没有前驱结点,其余每个结点有且只有 1个前驱结点;最后一个结点没有后续结点,其余每个结点有且只有1个后续结点。

7. 在树形结构中,树根结点没有前驱结点,其余每个结点有且只有1个前驱结点;叶子结点没有后续结点,其余每个结点的后续结点数可以任意多个。

8. 在图形结构中,每个结点的前驱结点数和后续结点数可以任意多个。

9.数据的存储结构可用四种基本的存储方法表示,它们分别是顺序、链式、索引和散列。

10. 数据的运算最常用的有5种,它们分别是插入、删除、修改、查找、排序。

11. 一个算法的效率可分为时间效率和空间效率。

二、单项选择题(B)1. 非线性结构是数据元素之间存在一种:A)一对多关系 B)多对多关系C)多对一关系 D)一对一关系( C )2. 数据结构中,与所使用的计算机无关的是数据的结构;A) 存储 B) 物理C) 逻辑 D) 物理和存储(C)3. 算法分析的目的是:A) 找出数据结构的合理性B) 研究算法中的输入和输出的关系C) 分析算法的效率以求改进D) 分析算法的易懂性和文档性(A)4. 算法分析的两个主要方面是:A) 空间复杂性和时间复杂性B) 正确性和简明性C) 可读性和文档性D) 数据复杂性和程序复杂性(C )5. 计算机算法指的是:A) 计算方法B) 排序方法C) 解决问题的有限运算序列D) 调度方法(B)6. 计算机算法必须具备输入、输出和等5个特性。

数据结构复习题及答案

数据结构复习题及答案

数据结构复习题及答案数据结构习题一、名词解释1.数据、数据元素、数据项、数据结构、数据的逻辑结构、数据物理结构、顺序存储、链式存储、算法、时间复杂度、空间复杂度。

2.线性表、顺序表、单链表、双向链表、循环链表、双向循环链表、三个概念的区别:头指针、头结点、首元结点(第1个元素结点)。

3.栈(顺序栈、链栈)、队列(顺序队、链队)、循环队列、递归、稀疏矩阵、三元组。

4.树、叶子结点、结点的度、树的度、树的高(深)度、二叉树、遍历、满二叉树、完全二叉树、哈夫曼树、WPL、哈夫曼编码。

5.图(有向、无向)、网、边、弧、度、入度、出度、完全图(有向、无向)、(强)连通图(分量)、(最小)生成树、邻接矩阵、邻接表、DFS、BFS。

6.查找表、关键字、静态查找、动态查找、ASL、顺序查找、折半查找、分块查找、二叉排序树。

7、排序、内(外)排序、稳定性、插入(直接、希尔),交换(起泡、快速),选择(直接、堆),2路归并。

一、填空题1.数据结构是研究数据的_逻辑结构__和___物理结构__,并在这种结构上定义相关的运算,设计实现这些运算的算法,分析算法的效率。

算法的效率包括时间和空间两个方面,分别称为___时间复杂度____和__空间复杂度___。

2.数据的基本单元是__数据元素__,数据的最小单元是__数据项_。

3.算法是对特定问题求解___步骤___的一种描述,是指令的有限序列。

4.一个算法的时间复杂度为(3n3+2n—7),其数量级表示为O(n3)_。

5.一个算法具有5个特性:确定性、可行性、有穷性、输入和输出。

6.算法机能的阐发和怀抱,能够从算法的工夫庞大度和空间庞大度来评判算法的好坏。

7.数据的逻辑布局包孕调集布局、线性布局、树形布局和图型布局四品种型。

8.数据布局在计较机中的表示称为数据的物理布局,它能够采用__按次存储___或__链式存储_两种存储方法。

9.线性表有两种存储布局,划分为按次存储和链式存储。

电大《数据结构(本)》复习题及答案

电大《数据结构(本)》复习题及答案

数据结构(本)复习题一、单项选择题(每小题2分,共30分)1.深度为5的完全二叉树共有20个结点,则第5层上有()个结点(根所在结点为第一层)。

A.3 B.8C.5 D.62.已知一个图的边数为ii,则该图的所有顶点的度数之和为( )。

A.2m B.mC.2m+1 D.m/23.数据结构中,与所使用的计算机无关的是数据的( )结构。

A.物理B.存储C.逻辑与物理D.逻辑4.链表所具备的特点是().A.可以随机访问任一结点B.占用连续的存储空间C.插人删除不需要移动元素结点D.可以通过下标对链表进行直接访问5.线性表只要以()方式存储就能进行折半查找。

A.链接B.顺序C.关键字有序的顺序D.二又树6.散列查找的原理是( )。

A.在待查记录的关键字值与该记录的存储位置之间建立确定的对应关系B.按待查记录的关键字有序的顺序方式存储C.按关键字值的比较进行查找D.基于二分查找的方法7.对n个元素进行冒泡排序若某趟冒泡中只进行了()次元素间的交换,则表明序列已经排好序。

A.1 B.2C.0 D.n-18.排序过程中,每一趟从无序子表中将一个待排序的记录按其关键字的大小放置到已经排好序的子序列的适当位置,直到全部排好序为止,该排序算法是()。

A.直接插入排序B.快速排序C.冒泡排序D.选择排序9.在对一组元素(64,48,106,33,25,82,70,55,93)进行直接插入排序时,当进行到要把第7个元素70插入到已经排好序的子表时,为找到插人位置,需进行()次元素n的比较(指由小到大排序).A.6 B.2C.3 D.410.采用顺序查找法对长度为n的线性表进行查找(不采用表尾设监视哨的方法),最坏的情况下要进行()次元素间的比较。

A.n+2 B.nC.n—1 D.n/211如图,若从顶点a出发按广度优先搜索法进行遍历,则可能得到的顶点序列为()。

A.acebdgf B.abecdgfC.acfedgb D.abecfdg12.元素2,4,6,8按顺序依次进栈,则该栈的不可能输出序列是( )(进栈出栈可以交替进行).A.8,6,4,2 B.2,4,6,8C.4,2,8,6 D.8,6,2,413.排序方法中,从未排序序列中挑选元素,并将其依次放人已排序序列(初始为空)的一端的方法,称为( )排序.A.归并B.插人C.选择D.快速I4.一棵哈夫曼树总共有23个结点,该树共有()个叶结点(终端结点)。

数据结构复习题及标准答案

数据结构复习题及标准答案

数据结构复习题及标准答案————————————————————————————————作者:————————————————————————————————日期:一、选择题。

(每小题2分,共40分)(1) 计算机识别.存储和加工处理的对象被统称为____A____。

A.数据B.数据元素C.数据结构D.数据类型(2) 数据结构通常是研究数据的____ A _____及它们之间的联系。

A.存储和逻辑结构B.存储和抽象C.理想和抽象D.理想与逻辑(3) 不是数据的逻辑结构是____ A ______。

A.散列结构B.线性结构C.树结构D.图结构(4) 数据结构被形式地定义为<D,R>,其中D是____ B _____的有限集,R是____ C _____的有限集。

A.算法B.数据元素C.数据操作D.逻辑结构(5) 组成数据的基本单位是____ A ______。

A.数据项B.数据类型C.数据元素D.数据变量(6) 设数据结构A=(D,R),其中D={1,2,3,4},R={r},r={<1,2>,<2,3>,<3,4>,<4,1>},则数据结构A是____ A ______。

A.线性结构B.树型结构C.图型结构D.集合(7) 数据在计算机存储器内表示时,物理地址与逻辑地址相同并且是连续的,称之为___ C ____。

A.存储结构B.逻辑结构C.顺序存储结构D.链式存储结构(8) 在数据结构的讨论中把数据结构从逻辑上分为___ A ____。

A.内部结构与外部结构B.静态结构与动态结构C.线性结构与非线性结构D.紧凑结构与非紧凑结构(9) 对一个算法的评价,不包括如下____ B _____方面的内容。

A.健壮性和可读性B.并行性C.正确性D.时空复杂度(10) 算法分析的两个方面是__ A ____。

A.空间复杂性和时间复杂性B.正确性和简明性C.可读性和文档性D.数据复杂性和程序复杂性(11) 线性表是具有n个___ C _____的有限序列(n≠0)。

《数据结构》期末复习题及参考答案

《数据结构》期末复习题及参考答案

《数据结构》复习资料一单选题 (共48题,总分值0分 )1. 设用链表作为栈的存储结构,则退栈操作(0 分)A. 必须判别栈是否为满B. 必须判别栈是否为空C. 判别栈元素的类型D. 对栈不作任何判别2. 下面关于m阶B树说法正确的是()。

①每个结点至少有两棵非空子树;②树中每个结点至多有m-1个关键字;③所有叶子在同一层上;④当插入一个数据项引起B树结点分裂后,树长高一层。

(0 分)A. ①②③B. ②③C. ②③④D. ③3. 下列关于文件的说法,错误的是()。

(0 分)A. 选择文件的组织方式时应考虑外存的性质和容量B. 不定长文件指的是总长度可变的文件C. 对文件的操作主要是维护和检索D. 文件的存储结构指的是文件在外存上的组织方式4. 设无向图的顶点个数为n,则该图最多有()条边。

(0 分)A. n-1B. n(n-1)/2C. n(n+1)/2D. n25. 设广义表L=((a,()),b,(c,d,e)),则Head(Tail(Tail(L)))的值为()。

(0 分)A. bB. cC. (c)D. (c,d,e)6. 设有一个二维数组A[m][n],假设A[0][0]存放位置在644(10),A[2][2]存放位置在676(10),每个元素占一个空间,问A[3][3](10)存放在什么位置?脚注(10)表示用10进制表示。

(0 分)A. 688B. 678C. 692D. 6967. 设某无向图中有n个顶点e条边,则该无向图中所有顶点的入度之和为(0 分)A. nB. eC. 2nD. 2e8. 广义表(a,(b,(),c))的深度为()。

(0 分)A. 1B. 2C. 3D. 49. 设有向图G中有五个顶点,各顶点的度分别为3、2、2、1、2,则G中弧数为()。

(0 分)A. 4条B. 5条C. 6条D. 无法确定10. 若有18个元素的有序表存放在一维数组A[19]中,第一个元素放A[1]中,现进行二分查找,则查找A[3]的比较序列的下标依次为(0 分)A. 1,2,3B. 9,5,2,3C. 9,5,3D. 9,4,2,311. 具有n个顶点的有向强连通图最少有()条弧。

数据结构复习题(带答案)

数据结构复习题(带答案)

装订第 1 页 共 11 页一、选择题1.设某数据结构的二元组形式表示为A=(D ,R),D={01,02,03,04,05,06,07,08,09},R={r},r={<01,02>,<01,03>,<01,04>,<02,05>,<02,06>,<03,07>,<03,08>,<03,09>},则数据结构A 是( B )。

(A )线性结构 (B )树型结构 (C )物理结构 (D )图型结构 2.树最适合用来表示( C )。

(A )有序数据元素 (B )无序数据元素(C )元素之间具有分支层次关系的数据 (D )元素之间无联系的数据3. 设一组初始记录关键字序列为(50,40,95,20,15,70,60,45),则以增量d=4的一趟希尔排序结束后前4条记录关键字为( B )。

(A) 40,50,20,95 (B) 15,40,60,20 (C) 15,20,40,45 (D) 45,40,15,204. 算法的计算量的大小称为计算的( B )。

(A) 效率 (B) 复杂性 C. 现实性 D. 难度5. 设一维数组中有n 个数组元素,则读取第i 个数组元素的平均时间复杂度为( C )。

(A) O(n) (B) O(nlog 2n) (C) O(1) (D) O(n) 6.下面算法的时间复杂度为( B )。

int f(int n) {if(n==0||n==1)return 1; else return n*f(n-1); }(A) O(1) (B)O(n) (C)O(n2) (D) O(n!) 7. 以下哪一个不是队列的基本运算?( A )(A )在队列第i 个元素之后插入一个元素 (B )从队头删除一个元素 (C )判断一个队列是否为空 (D )读取队头元素的值 8.不含任何结点的空树。

( C )(A)是一棵树; (B)是一棵二叉树;(C)是一棵树也是一棵二叉树 (D)既不是树也不是二叉树9. 若某线性表的常用操作是取第i 个元素及其前趋元素,则采用( A )存储方式最节省时间。

数据结构复习题参考答案

数据结构复习题参考答案

数据结构总复习第一部分课后习题第一章课后习题P16 1、2、5、6、9第三章课后习题P66 2、3第四章课后习题P88 1第五章课后习题P102 1、2第六章课后习题P134-135 1、3、16、18完成P137 实验二构造哈夫曼编码第七章课后习题P177 1、2、4、8、10第二部分综合习题一、单项选择题1.如果在数据结构中每个数据元素只可能有一个直接前驱,但可以有多个直接后继,则该结构是(C )A. 栈B. 队列C. 树D. 图2.下面程序段的时间复杂度为(B )for (i=0; i<m; i++)for (j=0; j<n; j++)A[i][j]=i*j;A. O (m2)B. O (n2)C. O (m*n)D. O (m+n)3.在头指针为head的非空单循环链表中,指针p指向尾结点,下列关系成立的是( A )A. p->next==headB. p->next->next==headC. p->next==NULLD. p==head4.若以S和X分别表示进栈和退栈操作,则对初始状态为空的栈可以进行的栈操作系列是( D )A. SXSSXXXXB. SXXSXSSXC. SXSXXSSXD. SSSXXSXX5.两个字符串相等的条件是(D )A. 串的长度相等B. 含有相同的字符集C. 都是非空串D. 串的长度相等且对应的字符相同6.已知一棵含50个结点的二叉树中只有一个叶子结点,则该树中度为1的结点个数为( D )A. 0B. 1C. 48D. 497.算法分析的目的是:(C )(A)找出数据结构的合理性(B)研究算法中输入和输出的关系(C)分析算法的效率以求改进(D)分析算法的易懂性和文档性8.用链表表示线性表的优点是:( C )(A)便于随机存取(B)花费的存储空间比顺序表少(C)便于插入和删除(D)数据元素的物理顺序与逻辑顺序相同9.在数组表示的循环队列中,front、rear分别为队列的头、尾指针,maxsize为数组的最大长度,队满的条件是:( D )(A)front=rear (B)rear=maxsize(C)rear=front (D)(rear+1)%maxsize=front10.若已知一棵二叉树先序序列为ABCDEFG,中序序列为CBDAEGF,则其后序序列为:( A )(A)CDBGFEA (B)CDBFGEA(C)CDBAGFE (D)BCDAGFE11.执行下列程序段,执行S的次数(S这段程序的时间复杂度)是:(D )for(int i=1;i<=n;i++)for(int j=1;j<=i;j++)S;(A)n2 (B)n2/2 (C)n(n+1) (D)n(n+1)/212.以下数据结构中哪一个是非线性结构的是:( D )(A)队列(B)栈(C)线性表(D)图13.设有6个结点的无向图,该图至少有多少条边才能确保是一个连通图:(A )(A)5 (B)6 (C)7 (D)814.树形结构数据元素之间的关系是:( C )(A)一对一关系(B)多对多关系(C)一对多关系(D)多对一关系15.一个栈的入栈序列是a,b,c,d,e,则栈的不可能的输出序列是:( C )(A)edcba (B)decba (C)dceab (D)abcde16.静态查找和动态查找的根本区别在于:(B )(A)它们的逻辑结构不一样(B)施加在其上的操作不同(C)所包含的数据元素的类型不一样(D)存储的实现不一样17.关键路径是AOE网中:(A )(A)从源点到终点的最长路径(B)从源点到终点的最短路径(C)最长的回路(D)最短的回路18.采用折半查找方法进行查找,数据文件为,且限于;(A )(A)有序表顺序存储结构(B)有序表链式存储结构(C)随机表顺序存储结构(D)随机表链式存储结构19.一个高度为h的完全二叉树共有n个结点,其中m个叶子结点,则下列式子成立的是( D )(A)n=h+m (B)h+m=2n (C)m=h-1 (D)n=2m-120.下列说法中不正确的是:(C )(A)数组时一种线性结构(B)数组是一种定长的线性结构(C)除了插入和删除操作外,数组的基本操作还有存取、修改、检索和排序等(D)数组的基本操作有存取、修改、检索和排序等,没有插入与删除操作21.设无向图G有n个顶点e条边,则该无向图中所有顶点的度之和为:( D )(A)n (B)e (C)2n (D)2e22.对下面的无向图进行广度优先搜索后所得到的顶点访问序列,正确的是:(A )(A)ABDEFC (B)ABFEDC (C)ADCBEF (D)ADCBFE23.若某线性表中最常用的操作是取第i 个元素和找第i个元素的前趋元素,则采用( D )存储方式最节省时间。

数据结构试题及答案(十套)

数据结构试题及答案(十套)

数据结构试题及答案(十套)数据结构试题及答案(十套)一、选择题1. 数据结构是指()。

A. 存储数据的方式B. 数据的逻辑结构和物理结构C. 数据的存储结构和存储方式D. 数据的逻辑结构、存储结构和存储方式答案:D2. 在数据结构中,线性表的存储方式包括()。

A. 顺序存储和链式存储B. 数组存储和链表存储C. 顺序存储、链表存储和索引存储D. 顺序存储、链表存储和树形存储答案:A3. 栈是一种()的数据结构。

A. 先进先出B. 先进后出C. 后进先出D. 后进后出答案:C4. 队列是一种()的数据结构。

A. 先进先出B. 先进后出C. 后进先出D. 后进后出答案:A5. 二叉树中,度为0的节点称为()。

A. 叶子节点B. 根节点C. 中间节点D. 子节点答案:A6. 以下哪个排序算法是稳定的?A. 快速排序B. 选择排序C. 插入排序D. 希尔排序答案:C7. 图中表示顶点之间关系的边的数量称为()。

A. 顶点度数B. 边数C. 路径数D. 网络答案:B8. 哈希表通过()来实现高效的查找操作。

A. 散列函数B. 排序算法C. 遍历操作D. 顺序存储答案:A9. 平衡二叉树是一种具有左右子树高度差不超过()的二叉树。

A. 0B. 1C. 2D. 3答案:B10. 在链表中,删除节点的操作时间复杂度是()。

A. O(1)B. O(logn)C. O(n)D. O(nlogn)答案:A二、填空题1. 在顺序存储结构中,元素之间的逻辑关系由()表示。

答案:下标2. 二叉查找树的中序遍历结果是一个()序列。

答案:递增3. 哈希表通过散列函数将关键字映射到()上。

答案:地址4. 图的邻接表中,每个顶点的所有邻接点链接成一个()。

答案:链表5. 位运算符中的左移和右移运算都是对二进制数进行()操作。

答案:移位三、解答题1. 简要介绍顺序存储和链式存储这两种线性表的存储方式,并比较它们的优缺点。

答案:顺序存储是将元素按照逻辑顺序依次存储在一块连续的存储空间中,通过元素的下标可以直接访问到元素。

数据结构复习资料(题目和参考答案)

数据结构复习资料(题目和参考答案)

数据结构复习题及参考答案(抽考其中50%)一、单选题(每小题1分)1.下列程序段的时间复杂度为(A )。

for(i=0; i<m ; i++)for(j=0; j<t ; j++) c[i][j]=0;for(i=0; i<m ; i++)for(j=0; j<t ; j++)for(k=0; k<n ; k++)c[i][j]=c[i][j]+a[i][k]*b[k][j];(A) O(m*n*t) (B) O(m+n+t) (C) O(m+n*t) (D) O(m*t+n)2.下列程序段的时间复杂度为(A )。

i=0,s=0;while (s<n) {s=s+i ;i++;}(A) O(n 1/2) (B) O(n 1/3) (C) O(n) (D) O(n 2)3.设顺序表中有n 个数据元素,则删除表中第i 个元素需要移动(A )个元素。

(A) n-i (B) n+l-i (C) n-1-i (D) i4.设某链表中最常用的操作是在链表的尾部插入或删除元素,则选用下列(D )存储方式最节省运算时间。

(A) 单向链表 (B) 单向循环链表(C) 双向链表 (D) 双向循环链表5.设F 是由1T 、2T 和3T 三棵树组成的森林,与F 对应的二叉树为B ,1T 、2T 和3T 的结点数分别为1n 、2n 和3n ,则二叉树B 的根结点的左子树的结点数为(A )。

(A) 11n - (B) 21n - (C) 23n n + (D) 13n n +6.设指针q 指向单链表中结点A ,指针p 指向单链表中结点A 的后继结点B ,指针s 指向被插入的结点X ,则在结点A 和结点B 插入结点X 的操作序列为(B )。

(A) s->next=p->next ;p->next=-s ; (B) q->next=s ; s->next=p ;(C) p->next=s->next ;s->next=p ; (D) p->next=s ;s->next=q ;7.利用直接插入排序法的思想建立一个有序线性表的时间复杂度为(C )。

(完整版)数据结构练习题及参考答案

(完整版)数据结构练习题及参考答案

数据结构练习题第一部分绪论一、单选题1. 一个数组元素a[i]与________的表示等价。

A、 *(a+i)B、 a+iC、 *a+iD、 &a+i2. 对于两个函数,若函数名相同,但只是____________不同则不是重载函数。

A、参数类型B、参数个数C、函数类型3. 若需要利用形参直接访问实参,则应把形参变量说明为________参数A、指针B、引用C、值4. 下面程序段的时间复杂度为____________。

for(int i=0; i<m; i++)for(int j=0; j<n; j++)a[i][j]=i*j;A、 O(m2)B、 O(n2)C、 O(m*n)D、 O(m+n)5. 执行下面程序段时,执行S语句的次数为____________。

for(int i=1; i<=n; i++)for(int j=1; j<=i; j++)S;A、 n2B、 n2/2C、 n(n+1)D、 n(n+1)/26. 下面算法的时间复杂度为____________。

int f( unsigned int n ) {if ( n==0 || n==1 ) return 1; else return n*f(n-1);}A、 O(1)B、 O(n)C、 O(n2)D、 O(n!)二、填空题1. 数据的逻辑结构被分为__________、_________、__________和__________四种。

2. 数据的存储结构被分为__________、_________、__________和__________四种。

3. 在线性结构、树形结构和图形结构中,前驱和后继结点之间分别存在着________、________和________的联系。

4. 一种抽象数据类型包括__________和__________两个部分。

5. 当一个形参类型的长度较大时,应最好说明为_________,以节省参数值的传输时间和存储参数的空间。

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

第1章绪论1 自测习题二、选择题1.以下数据结构中,属于线性结构的是 ( B )A)有向图B)串C)线索二叉树D)B树2.下列与数据元素有关的叙述中错误的是 (A)A)数据元素是有独立含义的数据最小单位B)数据元素是描述数据的基本单位C)数据元素可以称做结点D)数据元素可以称做记录3.以下术语中与数据的存储结构无关的是 (A)A)栈B)散列表C)顺序表D)双链表4.以下数据结构中,属于线性结构的是 (B)A)有向图B)串C)线索二叉树D)B树三、填空题1.数据结构包括的三方面内容分别是:数据的逻辑结构、数据的存储结构和数据的运算。

2.数据元素是数据的基本单位,在某些情况下也可以称为结点、记录和顶点。

3.数据逻辑结构的4种基本形态包括集合结构、线性结构、树型结构和图(网)结构。

4.一个正确的算法应该具有5个特性:输入、输出、确定性、可行性和有穷性。

5.数据的存储结构包括顺序、链式、索引和散列四种。

6.一个数据结构在计算机中的映象称为存储结构。

7.一个算法的效率主要是指该算法的时间效率和空间效率。

8.以下程序段的时间复杂度T(n)=_)O_____。

(2nsum=0;for(i=0 ; i<n; i++)for( j=0; j<n; j++)sum+=a[i][j];printf("%d\n",sum);第2章线性表2 自测习题二、选择题1.以下链表结构中,从当前结点出发能够访问到任一结点的是(B) A)单向链表和双向链表B)双向链表和循环链表C)单向链表和循环链表D)单向链表、双向链表和循环链表2.线性表是具有n 个 (B) 的有限序列。

A )数据项B )数据元素C )表元素D )字符3.若长度为n 的线性表采用链式存储结构,访问其第i 个元素的算法时间复杂度为 (B)A )O(1)B )O(n)C ) O(n 2)D )O(log 2n)4.在长度为n 的顺序表中,若要删除第i (1≤i ≤n )个元素,则需要向前移动的元素的次数为 (B)A )iB )n-iC )n-i+1D )n-i-15.在长度为n 的顺序表中第i (1≤i ≤n )个位置上插入一个元素时,为留出插入位置所需移动元素的次数为 (C)A )n-iB )iC )n-i+1D )n-i-1三、填空题1.有一单链表结构如下:图2-1 填空题1附图若要删除值为c 的结点,应做的操作是p->link=p->link->link 。

2.线性表L=( a 1,a 2,…a n )用数组存储。

假定删除表中任一元素的概… … data link率相同,则删除一个元素平均需要移动的元素个数是(n-1)/2 。

3.设有结点定义struct node{ int data;struct node *next;};且已建立如图2-2所示的带有头结点的单向链表:图2-2 填空题3附图函数sum 的功能是:计算链表中各结点数据域之和,作为函数值返回。

请填空。

int sum(struct node *head){ int s=0;struct node *p;p=head->next;do { s=s+ p->data ;p=p->next;}… data nextwhile ( p!= NULL );return s;}第3章栈和队列3 自测习题二、选择题1.有6个元素按6、5、4、3、2、1的顺序进栈,进栈过程中可以出栈,则以下可能的出栈序列是(B,D)A)1、4、3、5、2、6 B)6、5、4、3、2、1C)3、1、4、2、6、5 D)5、6、3、4、2、12.栈和队列都是(C)A)顺序存储的线性结构 B)链式存储的线性结构C)限制存取点的线性结构 D)限制存取点的非线性结构3.设循环队列的队首指针用front表示,队尾指针用rear表示,则判断队空的条件是(A)A)front==rear B)front+1=rear C)rear+1=front D)rear==04、设有中缀算术表达式:15 – 3 * (7 + 2 ),其对应的后缀算术表达式为(B)A)15 3 - 7 2 + * B)15 3 7 2 + * - C)15 3 * 7 2 +D)15 3 - * 7 2 +三、填空题1.队列是限制插入只能在表的一端,而删除在表的另一端进行的线性表,其操作特点是先进先出。

2.设有一个空栈,栈顶指针值为100,现有输入序列为1,2,3,4,5,经过操作序列:Push、Pop、Push、Push、Pop、Push、Push、Pop 后,现在已出栈的序列是 1、3、5,栈顶指针是102 。

3.设有后缀算术表达式:2 x y + * 3 y - /,其对应的中缀表达式为 2*(x+y)/(3-y) 。

4.已知一算术表达式的中缀形式为:(a+b)-(b+c)/2,其对应的前缀表达式形式应为 -+ab/+bc2 。

第4章串4.1自测习题一.选择题1.设有一个字符串S=“ABC 123 XYZ”,问该串的长度为(C)A) 9 B) 10 C) 11 D) 122.设有一个字符串S=”windows”,其子串的数目是(29个)A) 25个 B) 26个 C) 27个 D)28个3.串是一种特殊的线性表,其特殊性表现在(D)A)串中允许有空串 B)串可以顺序存储C)串可以链式存储 D)数据元素是一个字符。

二.填空题1.已知串S=”abaabccd”,求该串S的子串运算结果,SubStr(“abaabccd”, 4, 3)=_abc__,SubStr(“abaabccd”, 5, 0)=_∮_。

2.两个串相等的充分必要条件是_不仅两个串的长度相等,而_且各个位置上对应的字符也要相等。

3.不含任何字符的串称为_空串__,其长度为0_。

4.只含有空格字符的串称为_空格_,其长度为_串中空格符的个数_。

第5章数组与广义表5 自测习题一.选择题1.设有二维数组A[0...9 , 0...19 ],其每个元素占2个字节,数组按行优先顺序存储,第一个元素的存储地址为100,那么元素A[8,12]的存储地址为(D)A)262 B)284 C)402 D)4442.设有一个10阶的对称矩阵A,采用压缩存储方式,以行优先顺序存储,a11为第一个元素,其存储地址为1,且每个元素占1个地址空间,则a75的地址为(A)A)26 B)17 C)33 D)23 二.填空题1.设有二维数组A[10][10],其每个元素占2个字节,数组按列优先顺序存储,第一个元素的存储地址为100,那么元素A[6,6]的存储地址为_232___。

(下标从0开始)2.设有广义表A=((x, (a, b)), ((x, (a, b)), y)),则广义表A的长度为__2__,深度为__4__。

第6章树6 自测习题三.选择题1.如果结点A是结点B的双亲,而且结点B有4个兄弟,则结点A的度是(D)A)2 B)3 C)4 D)52.设有一棵二叉树,其1度结点有m个,2度结点有n个,则该二叉树的结点总数为(D)A)m+n B)2*m+n C)m+2*n D)m+2*n+13.设有一棵二叉树,其先序遍历序列是:ABCDEFG,中序遍历序列是:CBDAFEG,则该二叉树的后序遍历序列是(A)A)CDBFGEA B)CDFGBEA C)CDBAFGE D)CDBFEGA4.设有13个值,由它们组成一棵哈夫曼树,则该哈夫曼树中结点个数共有(D)。

A)13 B)12 C)26 D)255.设电文中出现的字母为A、B、C、D和E,每个字母在电文中出现的次数分别为:6,23,3,5和12,按哈夫曼编码,则字母C的编码应是 (C) (D)A)10 B)110 C)1110 D)11116.已知一棵二叉树的先序遍历序列为EFHIGJK,中序遍历序列为HFIEJGK,则该二叉树根的右子树的根是(G)A)E B)F C)GD)J7.设结点A有左孩子结点B,右孩子结点C,则在先序遍历、中序遍历、后序遍历这三种基本遍历序列中B一定是C的(A)A)前驱 B)后继 C)相邻结点 D)不相邻结点四.填空题1.采用二叉链式存储结构,具有n个结点的二叉树中,一共有2n 个指针域,其中 n+1 个指针域为空。

2.一棵非空的二叉树,其第i层上最多有_12 i____个结点。

3.满二叉树是一棵深度为k的且恰好有_k2-1____个结点的二叉树。

4.将一棵完全二叉树按层次编号,对任一编号为i的结点有:如该结点有左孩子,则其编号为 2i ;如该结点有右孩子,则其编号为 2i+1 。

5.设一棵二叉树中只有叶子结点和左、右子树都非空的结点,如果叶子结点的个数是m,则左、右子树都非空的结点个数是_m-1____6.设有一棵树(如图6-5所示),请回答下列问题:根结点是_A_;叶子结点有_D H I J F K;E的双亲是_B_;F的祖先是_CA_;G的孩子是_K_;D的孩子是_无;E的子孙有__H I J__;D的兄弟是 E__;B的兄弟是_C_;结点H的层数是_4_;树的深度是_4_;E为根的子树深度是_2;这棵树的度是_3_。

图6-5 填空题6的附图7.现有一表达式 ( a+b )*c-d / e,写出该表达式的波兰式_-*+abc/de___,以及逆波兰式_ab+c*de/-_____。

第7章图7 自测习题二、选择题1.对如图7-4所示的无向图G,若从顶点V1开始,按深度优先搜索法进行遍历,则可能的访问顺序为(A)A)V1 V2 V4 V8 V5 V6 V3 V7 B)V1 V2 V3 V4 V5 V6 V7 V8 C)V1 V2 V3 V4 V8 V5 V6 V7 D)V1 V2 V4 V5 V8 V3 V6 V7 2.对如图7-5所示的无向图G,若从顶点V1开始,按广度优先搜索法进行遍历,则可能的访问顺序为(C)A)V1 V2 V3 V4 V5 V6 V7 V8 B)V1 V2 V6 V3 V4 V5 V7 V8C)V1 V2 V6 V3 V4 V7 V8 V5D)V1 V2 V6 V3 V5 V4 V7 V83.在一个无向图中,所有顶点的度数之和等于所有边数的(B)A)1倍B)2倍C)1/2倍D)不确定三、填空题1.有n个顶点的无向连通图至少有 n-1 条边,有n个顶点的有向强连通图至少有 n 条弧。

2.在一个有n个顶点的无向图中,要连通所有顶点,至少需要 n-1 条边。

3.用邻接矩阵表示无向图时,若图中有n=500个顶点,m=500条边,则形成的邻接矩阵共有 25000个元素,其中 1000 个非零元素。

4.有n个顶点的无向图的邻接矩阵是对称的,因而只需存储(2n+n)/2条边即可。

相关文档
最新文档