数据结构测试(二)

1
假设以数组 A[m]存放循环队列的元素,其头尾指针分别为 front 和 rear,则当前队列中的元素个数为 ( )
A、(rear-front+m)%m
B、rear-front+1
C、(front-rear+m)%m
D、(rear-front)%m
正确答案: A

2
对于栈操作数据的原则是( )
A、先进先出
B、后进先出
C、后进后出
D、不分顺序
正确答案: B

3
依次读入数据元素序列{a,b,c,d,e,f,g}进栈,每进一个元素,机器可要求下一个元素进栈或弹 栈,如此进行,则栈空时弹出的元素构成的序列是以下哪些序列?
A、{d ,e,c,f,b,g,a}
B、{f,e,g,d,a,c,b}
C、{e,f,d,g,b,c,a}
D、{g,d,c,e,f,a,b}
正确答案: A

4
若一个栈以向量 V[1…n]存储,初始栈顶指针 top 为 n+1,则下面 x 进栈的正确操作是( )。
A、top:=top+1; V [top]:=x
B、V [top]:=x; top:=top+1
C、top:=top-1; V [top]:=x
D、V [top]:=x; top:=top-1
正确答案: C

5
表达式 a*(b+c)-d 的后缀表达式是( )。
A、abcd*±
B、abc+d-
C、abc
+d-
D、-+*abcd
正确答案: B

6
用单链表表示的链式队列的队头在链表的( )位置。
A、链头
B、链尾
C、链中
D、不确定
正确答案: A

7
若用一个大小为 6 的数组来实现循环队列,且当前 rear 和 front 的值分别为 0 和 3,当从队列中删除 一个元素,再加入两个元素后,rear 和 front 的值分别为多少?( )
A、1 和 5
B、2 和 4
C、4 和 2
D、5 和 1
正确答案: B

8
设栈 S 和队列 Q 的初始状态为空,元素 e1,e2,e3,e4,e5 和 e6 依次通过栈 S,一个元素出栈后即进 队列 Q,若 6 个元素出队的序列是 e2,e4,e3,e6,e5,e1 则栈 S 的容量至少应该是( )。
A、6
B、4
C、3
D、2
正确答案: C

9
设一个栈的输入序列是 1,2,3,4,5,则下列序列中,是栈的合法输出序列的是( )
A、5 1 2 3 4
B、4 5 1 3 2
C、4 3 1 2 5
D、3 2 1 5 4
正确答案: D

10
用不带头结点的单链表存储队列时,其队头指针指向队头结点,其队尾指针指向队尾结点,则在进行删 除操作时( )。
A、仅修改队头指针
B、仅修改队尾指针
C、队头、队尾指针都要修改
D、队头,队尾指针都可能要修改
正确答案: D

11
设栈的输入序列是 1,2,3,4,则( )不可能是其出栈序列。
A、1,2,4,3
B、2,1,3,4
C、4,3,1,2
D、3,2,1,4
正确答案: C

12
一个栈的输入序列为 123…n,若输出序列的第一个元素是 n,输出第 i(1<=i<=n)个元素是( )
A、不确定
B、n-i+1
C、i
D、n-i
正确答案: B

13
循环队列 A[0…m-1]存放其元素值,用 front 和 rear 分别表示队头和队尾,则当前队列中的元素数是 ( )。
A、(rear-front+m)%m
B、rear-front+1
C、rear-front-1
D、rear-front
正确答案: A

14
有六个元素 6,5,4,3,2,1 的顺序进栈,问下列哪一个不是合法的出栈序列?( )
A、5 4 3 6 1 2
B、4 5 3 1 2 6
C、3 4 6 5 2 1
D、2 3 4 1 5 6
正确答案: C

15
一个递归算法必须包括( )
A、递归部分
B、终止条件和递归部分
C、迭代部分
D、终止条件和迭代部分
正确答案: B

16
栈和队都是( )
A、顺序存储的线性结构
B、链式存储的非线性结构
C、限制存取点的线性结构
D、限制存取点的非线性结构
正确答案: C

17
用链接方式存储的队列,在进行删除运算时( )。
A、仅修改头指针
B、仅修改尾指针
C、头、尾指针都要修改
D、头、尾指针可能都要修改
正确答案: D

18
递归过程或函数调用时,处理参数及返回地址,要用一种称为( )的数据结构。
A、队列
B、多维数组
C、栈
D、线性表
正确答案: C

19
若以 1234 作为双端队列的输入序列,则既不能由输入受限的双端队列得到,也不能由输出受限的双 端队列得到的输出序列是( )。
A、1234
B、4132
C、4231
D、4213
正确答案: C

20
若一个栈的输入序列为 1,2,3,…,n,输出序列的第一个元素是 i,则第 j 个输出元素是( )
A、i-j-1
B、i-j
C、j-i+1
D、不确定的
正确答案: D

21
执行完下列语句段后,i 值为:( )

int f(int x)  
{return ((x>0) ? x* f(x-1):2);}  
int i ;  
i =f(f(1));

A、2
B、4
C、8
D、无限递归
正确答案: B

22
栈和队列的共同点是( )。
A、都是先进先出
B、都是先进后出
C、只允许在端点处插入和删除元素
D、没有共同点
正确答案: C

23
一个栈的输入序列为 1 2 3 4 5,则下列序列中不可能是栈的输出序列的是( )
A、2 3 4 1 5
B、5 4 1 3 2
C、2 3 1 4 5
D、1 5 4 3 2
正确答案: B

24
若已知一个栈的入栈序列是 1,2,3,…,n,其输出序列为 p1,p2,p3,…,pN,若 pN是 n,则 pi是( )。
A、i
B、n-i
C、n-i+1
D、不确定
正确答案: D

发布了81 篇原创文章 · 获赞 83 · 访问量 1529

猜你喜欢

转载自blog.csdn.net/qq_43133192/article/details/105091793