首页 考研

2021年数据结构考研真题答案及解析(五)

考研 希赛网 浏览 1120

考研真题,是用来研究考试规律的。考生可通过真题,来确定自己的复习范围,来研究考试的重点、难点是哪些内容。希赛网为大家整理2021年数据结构考研真题答案及解析,供大家参考!

本文提供2021年数据结构考研真题答案及解析,以下为具体内容

1、设N是描述问题规模的非负整数,下列程序段的时间复杂度是( )。static int fun(int N){ if(N==1) return 0; return 1 + fun(N/2);}

A、O(logN)

B、O(N)

C、(NlogN)

D、O(N)

2、一些随机产生的数采用线性链表存储,在下面这些排序方法中,( )的时间复杂度是最小的。

A、插入排序

B、快速排序

C、堆排序

D、归并排序

3、一个栈的输入序列为a,b,c,d,e,则下列序列中不可能是栈的输出序列的是( )。

A、b c d a e

B、e d a c b

C、b c a d e

D、a e d c b

4、实现一个队列需要( )个栈。

A、1

B、2

C、3

D、4

5、下面( )是一棵满二叉树的结点个数。

A、8

B、13

C、14

D、15

6、下列序列中,哪一个是堆( )?

A、75,65,30,15,25,45,20,10

B、75,65,45,10,30,25,20,15

C、75,45,65,30,15,25,20,15

D、75,45,65,10,25,30,20,15

7、一棵Huffman树共有203个结点,对其Huffman编码,共能得到( )个不同的码字。

A、100

B、102

C、200

D、203

8、下面说法错误的是( )。

A、一个有n个顶点和n条边的无向图一定是有环的。

B、建立十字链表的时间复杂度和建立邻接表是相同的。

C、邻接表只能用于有向图的存储,邻接矩阵对于有向图和无向图的存储都适用。

D、在某些图的应用问题中,如果需要找到表示同一条边的两个结点,那么采用邻接多重表比邻接表作为储存结构更为适宜。

9、图的广度优先遍历算法中使用列作为其辅助数据结构,那么在算法执行过程中每个顶点进队次数最多为( )。

A、1

B、2

C、3

D、4

10、设一个有向图G=(V,E),其中V={v1,v2,v3,v4,v5,v6}E={<v1,v2>,<v2,v3>,<v3,v6>,<v4,v2>,<v4,v5>,<v5,v6>}不属于该图的拓扑排序有序序列是( )。

A、v1 v2 v3 v4 v5 v6

B、v1 v4 v2 v3 v5 v6

C、v4 v5 v1 v2 v3 v6

D、v4 v1 v2 v3 v5 v6

1、试题答案:A

试题解析:


2、试题答案:D

试题解析:


3、试题答案:B

试题解析:

【考点】本题考查数据结构--栈和队列--栈--栈的基本概念--栈的基本操作。
【解析】
对于A,可以采用这样的操作来实现:push(a)、push(b)、pop(b)、push(c)、pop(c)、push(d)、pop(d)、pop(a)、push(e)、pop(e),因此A正确;对于B,若e为第一个出栈元素,则根据栈“后进先出”的特性,其出栈的序列必为e、d、c、b、a,因此B错误;对于C,可以采用这样的操作来实现:push(a)、push(b)、pop(b)、push(c)、pop(c)pop(a)、push(d)、pop(d)、push(e)、pop(e),因此C正确;对于D,可以采用这样的操作来实现:push(a)、pop(a)、push(b)、push(c)、push(d)、push(e)、pop(e)、pop(d)、pop(c)、pop(b),因此D正确。故本题选B。

4、试题答案:B

试题解析:

【考点】本题考查数据结构--栈和队列--栈和队列的综合应用。
【解析】
栈具有“后进先出”的特性,而队列具有“先进先出”的特性。采用栈实现队列时,通常需要两个栈,入队操作即数据进入栈S1;出栈操作首先判断栈S2是否为空,若不为空,则从栈S2出栈,否则元素从栈S1出栈进入栈S2,再从栈S2出栈。故本题选B。

5、试题答案:D

试题解析:

【考点】本题考查数据结构--树与二叉树--二叉树--满二叉树--满二叉树的性质。
【解析】
本题需要正确区分满二叉树和完全二叉树。如果二叉树中除了叶子结点,每个结点的度都为2,则此二叉树称为满二叉树。而一棵高度为d的完全二叉树除了d-1层以外,每一层都是满的,底层叶结点集中在左边的若干位置上。将上述选项按照结点自上而下、自左往右的方式填充,画出树的结构如下:

根据上图可知,A、B、C均为完全二叉树,而D为满二叉树,故本题选D。

6、试题答案:C

试题解析:

【考点】本题考查数据结构--排序--内部排序--选择排序--堆排序--堆--堆的性质。
【解析】
堆总是满足这两个性质:① 堆中某个结点的值总是不大于或不小于其父结点的值;② 堆总是一棵完全二叉树。将根结点最大的堆叫做最大堆或大根堆,根结点最小的堆叫做最小堆或小根堆。画出各选项对应的二叉树结构并判断是否符合堆的性质如下:


由上图可知,只有C选项符合堆的性质,故本题选C。

7、试题答案:B

试题解析:

【考点】本题考查数据结构--树与二叉树--树与二叉树的应用--哈/赫夫曼树及其编码--哈/赫夫曼树--哈/赫夫曼树的性质。
【解析】
一棵哈夫曼树中仅有度为0和度为2的结点,n=n0+n2。Huffman树的本质是一棵二叉树,因此符合二叉树的性质,n0=n2+1。哈夫曼树的权值与树的叶子结点一一对应,因此本题实际上求的是树的叶子结点的个数。n=n0+n0-1=203,求得n0=102,故本题选B。

8、试题答案:C

试题解析:

【考点】本题考查数据结构--图--图的基本概念。
【解析】
对于A,n-1条边可以构成树,再增加一条边会使得图中存在环,因此A正确;对于B,十字链表把邻接表和逆邻接表整合在一起,建立十字链表和建立邻接表的时间复杂度是相同的,因此B正确;对于C,邻接表既适用于有向图的存储,又适用于无向图的存储,因此C错误;对于D,邻接多重表在针对于删除无向图中的某边等操作时比邻接表更方便,因此D正确。故本题选C。

9、试题答案:A

试题解析:

【考点】本题考查数据结构--图--图的遍历--图的广度优先遍历/搜索--图的广度优先遍历/搜索的算法思想。
【解析】
广度优先的遍历方法为:从某顶点v出发,在访问了v之后依次访问v的各个未曾访问过的邻接点,然后分别从这些邻接点出发依次访问它们的邻接点,并使“先被访问的顶点的邻接点”先于“后被访问的邻接点”被访问,直到图中所有已被访问的顶点的邻接点都被访问到。若图中仍有未被访问的顶点,从该顶点出发重复上述过程。分析上述算法,设队列存储已被访问的顶点,因此每个顶点最多进入队列一次,故本题选A。

10、试题答案:A

试题解析:

【考点】本题考查数据结构--图--有向无环图--拓扑排序--拓扑排序算法--拓扑排序算法的应用。
【解析】
(1)拓扑排序是针对有向图的排序方法,求拓扑排序的方法为:
① 初始时拓扑序列为空;
② 任选一个入度为0的点放入拓扑序列中,同时删除该顶点以及从该顶点出发的弧;
③ 重复上述步骤②直至不存在入度为0的顶点。

(2)画出题干所示的有向图如下:

由上图可知,A选项不符合,v2的入度是2,v1放入拓扑序列后,v2的入度为1,并非为0,其余各选项均正确,故本题选A。

点击查看【完整】试卷>>

责任编辑:希赛网

📅 本文最后更新于 2023-08-12

温馨提示:因考试政策、内容不断变化与调整,本网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!
题库
章节练习
章节练习
章节专项突破
模拟考场
模拟考场
海量免费试题
历年真题
历年真题
真题实战演练
每日一练
每日一练
每天10题练习
习题练习
习题练习
核心知识点
高频错题
高频错题
错题突破集训
分享至