2023年数据结构精选样卷

本试卷为2023年数据结构精选样卷,题目包括:单项选择题。

本卷包括如下题型:

一、单项选择题

数据结构精选样卷

一、单项选择题 (共50题,每题2分,共计100分)

(  D  )
1、设一个栈的输入序列是 1,2,3,4,5,则下列序列中,是栈的合法输出序列的是( D )。
A、5 1 2 3 4
B、4 5 1 3 2
C、4 3 1 2 5
D、3 2 1 5 4
(  A  )
2、下述哪一条是顺序存储结构的优点?( A )。
A、存储密度大
B、插入运算方便
C、删除运算方便
D、可方便地用于各种逻辑结构的存储表示
(  B  )
3、将一棵有100个结点的完全-二叉树从根开始,每-层从左到右依次对结点进行编号,根结点的编号为10,则编9的结点的左孩子编号为(B) 。
A、99
B、98
C、50
D、48
(  D  )
4、(4分)采用二分查找方法查找长度n的线性表时,其平均查找长度为(D)
A、O(n^2)
B、O(nlog2n)
C、O(n)
D、O(log2n)
(  C  )
5、(3分)查找运算主要是对关键字的(C)。
A、移位
B、交换
C、比较
D、定位
(  A  )
6、(4分)在一个单链表中,已知q指向p所指向结点的前趋结点,若在q. p所指结点之间插入一个s所指向的新结点,则执行的操作是(A)。
A、q->next=s; s->next=p
B、p->next=s; s->next=q
C、s->next=p->next; p->next=s
D、p->next=s->nxt; s->next=p
(  B  )
7、一个队列的入队序列是13.5.79, 则出队的输出序列只能是(B) 。
A、9,7,5,3,1
B、1,3,5,7,9
C、1.,5,9,3,7
D、9,5,1,7,3
(  A  )
8、线性表的顺序存储结构是一种()的存储结构。
A、随机存取
B、顺序存取
C、索引存取
D、散列存取
(  C  )
9、计算机算法指的是(),它具有输入、输出、可行性、确定性和有穷性等五个特性。
A、计算方法
B、排序方法
C、解决问题的优先运算序列
D、调度方法
(  C  )
10、一棵具有 1028 个结点的二叉树的深度 h 为( )。
A、11
B、10
C、11~1028
D、10~1027
(  B  )
11、空串与空格字符组成的串的区别在于()。
A、数据元素的组织形式
B、数据类型
C、数据存储结构
D、数据定义
(  C  )
12、表达式a*(b+c)-d的后缀表达式是
A、abc*+d-
B、cb+a*d-
C、abc+*d-
D、abcd+*-
(  C  )
13、创建一个包括n个结点的有序单链表的时间复杂度是( )。
A、O(1)
B、O(n)
C、O(n2)
D、O(nlog2n)
(  A  )
14、某二叉树的后序遍历序列与中序遍历序列相同,均为 ABCDEF,则按层次输出(同一层从左到右)的序列为()。
A、FEDCBA
B、CBAFED
C、DEFCBA
D、ABCDEF
(  D  )
15、设一组权值集合W=(15,3,14,2,6,9,16,17),要求根据这些权值集合构造一棵哈夫曼树,则这棵哈夫曼树的带权路径长度为( )。。
A、129
B、219
C、189
D、229
(  C  )
16、在不完全排序的情况下,就可以找出前几个最大值的方法是( )。
A、快速排序
B、直接插入排序
C、堆排序
D、归并排序
(  D  )
17、数据结构主要研究( )。
A、数据的逻辑结构
B、数据的存储结构
C、数据的逻辑结构和存储结构
D、数据的逻辑结构、存储结构以及数据在操作上的实现
(  C  )
18、二路归并排序的时间复杂度为( )。
A、O(n)
B、O(n2)
C、O(nlog2n)
D、O(log2n)
(  B  )
19、设无向图G中有n个顶点,则该无向图的最小生成树上有( )条边。
A、n
B、n-1
C、2n
D、2n-1
(  B  )
20、在二叉排序树中插入一个关键字值的平均时间复杂度为( )。
A、O(n)
B、O(log2n)
C、O(nlog2n)
D、O(n2)
(  C  )
21、一个算法应该是( )。
A、程序
B、问题求解步骤的描述
C、要满足五个基本特性
D、A和C.
(  C  )
22、在平衡二叉树中插入一个结点后造成了不平衡,设最低不平衡结点为A,并已知结点A的左孩子的平衡因子为0,右孩子的平衡因子为1,则应做()型调整其平衡。
A、LL
B、LR
C、RL
D、RR
(  C  )
23、在一个链队列中, front和rear分别为队头指针和队尾指针,则插入一个结点s的操作为( )。 (4.0分)
A、front=front.next;
B、s.next=rear;rear=s;
C、rear.next=s;rear=s;
D、s.next=front;front=s;
(  C  )
24、栈和队列的共同点是( )。 (4.0分)
A、都是先进后出
B、都是先进先出
C、只允许在端点处插入和删除元素
D、没有共同点
(  A  )
25、判断带头结点的单链表为空表的条件是( ),假设头指针为head。 (3.0分)
A、this.head.next==null;
B、this.head==null;
C、this.head.next==this.head;
D、this.head!=null;
(  A  )
26、一个长度为n的顺序表中,在下标i(0≤i≤n)处插入一个新元素时,需要向后移动( )个元素。 (3.0分)
A、n-i
B、n-i+1
C、n-i-1
D、i
(  A  )
27、当线性表的元素总数基本稳定,且很少进行插入和删除操作,但要求以最快的速度存取线性表中的元素时,应采用( )存储结构。 (3.0分)
A、顺序
B、链式
C、索引
D、散列
(  B  )
28、在单链表结点p之后插入结点s,正确的操作是( )。 (3.0分)
A、p.next=s;s.next=p.next;
B、s.next=p.next;p.next=s;
C、p.next=s;p.next=s.next;
D、p.next=s.next;p.next=s;
(  D  )
29、无论待排序序列排列是否有序,采用 ( )方法的时间复杂度都是O(n^2)。
A、快速排序
B、堆排序
C、归并排序
D、直接选择排序
(  A  )
30、对有n个数的数列进行冒泡排序,至少应该交换( )次?
A、0
B、n/2
C、n
D、2n
(  D  )
31、通常从正确性、易读性、健壮性、高效性等4个方面评价算法的质量,以下解释错误的是( )
A、正确性算法应能正确地实现预定的功能
B、易读性算法应易于阅读和理解,以便调试、修改和扩充
C、健壮性当环境发生变化时,算法能适当地做出反应或进行处理,不会产生不需要的运行结果
D、高效性即达到所需要的功能花费的时间和空间
(  A  )
32、在一个长度为n的顺序表中删除第i个元素,需要向前移动( )个元素。
A、n-i
B、n-i+1
C、n-i-1
D、i+1
(  B  )
33、一个顺序表的第一个元素的存储地址是90,每个元素的长度为2,则第6个元素的存储地址是( )。
A、98
B、100
C、102
D、106
(  A  )
34、已知指针p和q分别指向某单链表中第一个结点和最后一个结点。假设指针s指向另一个单链表中某个结点,则在s所指结点之后插入上述链表应执行的语句为( )。
A、q->next=s->next;s->next=p;
B、s->next=p;q->next=s->next;
C、p->next=s->next;s->next=q;
D、s->next=q;p->next=s->next;
(  D  )
35、一个非空广义表的表头( )。
A、不可能是子表
B、只能是子表
C、只能是原子
D、可以是子表或原子
(  B  )
36、采用稀疏矩阵的三元组表形式进行压缩存储,若要完成对三元组表进行转置,只要将行和列对换,这种说法( )。
A、正确
B、错误
C、无法确定
D、以上均不对
(  D  )
37、对一些特殊矩阵采用压缩存储的目的主要是为了( )
A、表达变得简单
B、对矩阵元素的存取变得简单
C、去掉矩阵中的多余元素
D、减少不必要的存储空间的开销
(  B  )
38、由二叉树的前序和后序遍历序列( )惟一确定这棵二叉树。
A、能
B、不能
C、如果是满二叉树就能
D、如果是完全二叉树就能
(  D  )
39、设一棵二叉树的深度为k,则该二叉树中最多有( )个结点。
A、2k-1
B、2^k
C、2^(k-1)
D、2^k-1
(  A  )
40、执行一趟快速排序能够得到的序列是( )。
A、[41,12,34,45,27] 55 [72,63]
B、[45,34,12,41] 55 [72,63,27]
C、[63,12,34,45,27] 55 [41,72]
D、[12,27,45,41] 55 [34,63,72]
(  B  )
41、设二叉树的先序遍历序列和后序遍历序列正好相反,则该二叉树满足的条件是( )。
A、空或只有一个结点
B、高度等于其结点数
C、任一结点无左孩子
D、任一结点无右孩子
(  B  )
42、设某无向图有20个顶点,则该无向图的邻接表中有( )个表头结点。
A、40
B、20
C、5
D、380
(  C  )
43、设某棵二叉树的高度为10,则该二叉树上叶子结点最多有( )。
A、20
B、256
C、512
D、1024
(  C  )
44、堆的形状是一棵( )。
A、二叉排序树
B、满二叉树
C、完全二叉树
D、平衡二叉树
(  C  )
45、一棵非空二叉树的先序遍历序列与后序遍历序列正好相同,则该二叉树一定满足( )。
A、所有的结点均无左孩子
B、所有的结点均无右孩子
C、所有的结点均无右孩子
D、所有的结点均只有一个孩子
(  C  )
46、算法是描述解决特定问题的思路.方法和步骤,是求解步骤(指令)的有限序列。其特性除了包含输入和输出外,还包括( )。 (5.0分)
A、有穷性.正确性.可行性
B、有穷性.正确性.确定性
C、有穷性.确定性.可行性
D、正确性.确定性.可行性
(  A  )
47、在对一组关键字序列{70,55,100,15,33,65,50,40,95},进行直接插入排序时,把65插入,需要比较( )次。 (2.0分)
A、2
B、4
C、6
D、8
(  C  )
48、已知单链表的每个结点包括一个指针域 next,它指向该结点的后继结点。现要将指针 q 指向的新结点插入到指针 p 指向的结点之后,下面的操作序列中正确的是( )
A、q = p->next;
B、p->next = q->next; p->next = q->next ;q = p->next ;
C、q->next = p->next;
D、p->next = q;P->next = q ;q->next = p->next ;
(  C  )
49、由 3 个结点所构成的二叉树有( )种形态
A、1
B、3
C、5
D、7
(  C  )
50、下列关于二叉树的说法正确的是( )
A、一棵二叉树中的结点个数大于 0
B、二叉树中任何一个结点要么是叶子,要么恰有两个子女
C、一棵二叉树中叶子结点的个数等于度为 2 的结点个数加 1
D、二叉树中任何一个结点的左子树和右子树上的结点个数一定相等