2023年数据结构

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

本卷包括如下题型:

一、单项选择题

数据结构

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

(  B  )
1、一个算法应该是(  )。
A、程序
B、问题求解步骤的描述
C、要满足五个基本特性
D、A 和C.
(  B  )
2、对于栈操作数据的原则是( B )。
A、先进先出
B、后进先出
C、后进后出
D、不分顺序
(  C  )
3、(4分)在带头结点的双向循环链表中插入一个新结点,要修改的指针域数量是(C)。
A、2个
B、3个
C、4个
D、6个
(  D  )
4、设散列表长m=13.散列函数h (key). =key%11。 表中已有4个结点: h (15) =4, h (27) =5,h (39) =6,h(51) =7,其余地址为空,若采用二C次探查法处理冲突,则关键字为49的结点地址是(D)。
A、3
B、5
C、8
D、9
(  A  )
5、深度为 h 的满 m 叉树的第 k 层有( )个结点。(1≤k≤H)
A、mk-1
B、mk-1
C、mh-1
D、mh-1
(  C  )
6、设有两个串p和q,其中q是p的子串,求q在p中首次出现的位置的算法称为()。
A、求子串
B、联接
C、匹配
D、求串长
(  C  )
7、循环队列的队满条件为()。
A、(sq.rear+1)%maxsize==(sq.front+1)%maxsize
B、(sq.rear+1)%maxsize==sq.front+1
C、sq.(rear+1)%maxsize==sq.front
D、sq.rear==sq.front
(  B  )
8、给定排序码值序列为{F,B,J,C,E,A,I,D,C,H},对其按字母的字典序列的次序进行排列,快速排序的第一趟排序结果为
A、{B,F,C,J,A,E,D,I,C,H}
B、{C,B,D,C,E,A,F,I,J,H}
C、{B,F,C,E,A,I,D,C,H,J}
D、{A,B,D,C,E,F,I,J,C,H}
(  A  )
9、已知A[m]中每个数组元素距其最终位置不远,采用下列 ( ) 排序方法最节省时间
A、直接插入
B、堆
C、快速
D、直接选择
(  A  )
10、设计一个判别表达式中括号是否匹配出现的算法,采用( )的数据结构最佳。
A、栈
B、顺序表
C、队列
D、单链表
(  C  )
11、从未排序序列中依次取出元素与已排序序列中的元素进行比较,将其放入已排序序列的正确位置上的方法,这种排序方法称为( )。
A、归并排序
B、冒泡排序
C、插入排序
D、选择排序
(  A  )
12、链式栈结点为:(data,link),top指向栈顶.若想摘除栈顶结点,并将删除结点的值保存到x中,则应执行操作( )。
A、x=top->data;top=top->link;
B、top=top->link;x=top->link;
C、x=top;top=top->link;
D、x=top->link;
(  C  )
13、对n个元素的表做顺序查找时,若查找每个元素的概率相同,则平均查找长度为( )。
A、(n-1)/2
B、n/2
C、(n+1)/2
D、n
(  A  )
14、数组A中,每个元素A的长度为3个字节,行下标i从1到5,列下标j从1到6,从首地址开始连续存放在存储器内,存放该数组至少需要的单元数是( )。
A、90
B、70
C、50
D、30
(  C  )
15、单链表的存储密度为( )。
A、大于1
B、等于5
C、小于1
D、不能确定
(  A  )
16、设循环队列的存储空间为 Q(1:100),初始状态为空。现经过一系列正常操作后,front=49,则循环队列中的元素个数为()。
A、不确定
B、49
C、51
D、50
(  C  )
17、下列叙述中正确的是()。
A、所谓有序表是指在顺序存储空间内连续存放的元素序列
B、有序表只能顺序存储在连续的存储空间内
C、有序表可以用链接存储方式存储在不连续的存储空间内
D、任何存储方式的有序表均能采用二分法进行查找
(  C  )
18、设有序表中的元素为(13,18,24,35,47,50,62),则在其中利用二分法查找值为24的元素需要经过( )次比较。
A、1
B、2
C、3
D、4
(  B  )
19、设S=”abc”;T=”xyz”,则strcmp(S,T)的值为( )。
A、正数
B、负数
C、零
D、不确定
(  A  )
20、设F是由T1、T2和T3三棵树组成的森林,与F对应的二叉树为B,T1、T2和T3的结点数分别为N1、N2和N3,则二叉树B的根结点的左子树的结点数为( )。
A、N1-1
B、N2-1
C、N2+N3
D、N1+N3
(  B  )
21、时间复杂性为O(nlog2n)且空间复杂性为O(1)的排序方法是( )。
A、归并排序
B、堆排序
C、快速排序
D、锦标赛排序
(  B  )
22、向一个栈顶指针为HS的链栈中将一个S指针所指的结点入栈,执行( )。
A、HS->next=s
B、S->next=HS->next;HS->next=s
C、S->next=HS;HS=s
D、S->next=HS;HS=HS->next
(  B  )
23、顺序查找法适合于存储结构为()的线性表
A、哈希存储
B、顺序存储或链式存储
C、压缩存储
D、索引存储
(  C  )
24、在一棵含有8个结点的二叉排序树,其结点值为a—h,以下()是其先后序遍历结果。
A、adbcegfh
B、bcagehfd
C、bcaefdhg
D、bdacefhg
(  C  )
25、以下排序方法中,( )不需要进行关键字的比较。
A、快速排序
B、归并排序
C、基数排序
D、堆排序
(  C  )
26、现有一“遗传”关系:设x是y的父亲,则x可以把它的属性遗传给y。表示该遗传关系最适合的数据结构为()
A、向量
B、二叉树
C、树
D、图
(  C  )
27、在一个长度为n的顺序表的删除第i个元素(1≤i≤n) 时,需向前移动()个元素
A、i
B、n
C、n-i
D、n-i+1
(  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;
(  A  )
29、具有4个顶点的无向完全图有( )条边。 (5.0分)
A、6
B、12
C、16
D、20
(  C  )
30、若以{4,5,6,7,8}作为权值构造哈夫曼树,则该树的带权路径长度为( )。 (3.0分)
A、67
B、68
C、69
D、70
(  B  )
31、在单链表L中,指针p所指结点有后继结点的条件是( )。
A、p = p.next
B、p.next!=null
C、p.next=null
D、p.next = p.next.next
(  A  )
32、若串S=”abcdefghi”,其非空子串数目是( )。
A、45
B、37
C、8
D、36
(  D  )
33、对于一个具有N个顶点的无向图,若采用邻接矩阵表示,则该矩阵大小是( )
A、N
B、(N-1)2
C、(N-1)*N
D、N*N
(  D  )
34、算法分析不研究()
A、算法的空间复杂度
B、算法的时间复杂度
C、算法的正确性
D、算法的易读性
(  A  )
35、在表长为n的顺序表中,当在任何位置删除一个元素的概率相同时,删除一个元素所需移动的平均个数为( )。
A、(n-1)/2
B、n/2
C、(n+1)/2
D、n
(  B  )
36、一个队列的入队序列是1,2,3,4,5,6,7,则队列的出队序列可能是( )。
A、1,2,3,5,7,6,4
B、1,2,3,4,5,6,7
C、7,6,5,4,1,2,3
D、7,6,5,4,3,2,1
(  D  )
37、正常情况下,删除非空的顺序存储结构的堆栈的栈顶元素,栈顶指针top的变化是( )。
A、top不变
B、top=0
C、top=top+1
D、top=top-1
(  A  )
38、以下有关广义表的表述中,正确的是( )
A、由0个或多个原子或子表构成的有限序列
B、至少有一个元素是子表
C、不能递归定义
D、不能为空表
(  A  )
39、设某完全无向图中有n个顶点,则该完全无向图中有( )条边。
A、n(n-1)/2
B、n(n-1)
C、n^2
D、n^2-1
(  A  )
40、设有n个待排序的记录关键字,则在堆排序中需要( )个辅助记录单元。
A、O(1)
B、O(n)
C、O(nlog2(n))
D、O(n^2)
(  A  )
41、设一条单链表的头指针变量为head且该链表没有头结点,则其判空条件是( )。
A、head==NULL
B、head->next==NULL
C、head->next==head
D、head!=NULL
(  B  )
42、根据初始关键字序列(19,22,01,38,10)建立的二叉排序树的高度为( )。
A、2
B、3
C、4
D、5
(  D  )
43、数组T[1..n]用来表示一个循环队列,a为当前队列头元素的前一个位置,b为队尾元素啊的位置,假定队列中的元素个数小于n,则队列中元素个数为( )。
A、b-a
B、(n+a-b)%n
C、n+b-a
D、(n+b-a)%n
(  B  )
44、分析以下程序段,其时间复杂度为 T(n)=( ) for( i =0; i
A、O(n)
B、O(n^2)
C、O(n^3)
D、O(1)
(  D  )
45、分析以下程序段,其时间复杂度为 T(n)=( ) i=1;While(i<=n) i=3*i;
A、O(n)
B、O(n^2)
C、O(n^3)
D、O(1)
(  B  )
46、栈中元素的进出原则是( )
A、先进先出
B、后进先出
C、栈空则进
D、栈满则出
(  B  )
47、在一个顺序循环队列中,队尾指向队尾元素的( )位置。
A、前一个
B、后一个
C、当前
D、最后
(  B  )
48、DLR--前序遍历(根在前,从左往右,一棵树的根永远在左子树前面,左子树又永远在右子树前面 )LDR--中序遍历(根在中,从左往右,一棵树的左子树永远在根前面,根永远在右子树前面) LRD--后序遍历(根在后,从左往右,一棵树的左子树永远在右子树前面,右子树永远在根前面) 一,
A、有序数据元素
B、元素之间具有分支层次关系的数据
C、无序数据元素
D、元素之间无联系的
(  A  )
49、关键路径是 AOE 网中( )
A、从源点到终点的最长路径
B、从源点到终点的最短路径
C、最长的回路
D、最短的回路
(  B  )
50、设高度为h的二叉树上只有度为0和度为2的结点,则此类二叉树中所包含的结点数至少为
A、2h
B、2h-1
C、2h+1
D、h+1