🎯问题:
1. (单选题)若元素a,b,c,d,e,f依次进栈,允许进栈、出栈操作交替进行。但不允许连续三次进行退栈工作,则不可能得到的出栈序列是
A. cbdaef
B. acbefd
C. dbcaef
D. dcebfa
2. (单选题)若让元素1,2,3,4,5依次进栈,则出栈次序不可能出现在( )种情况。
A. 5,4,3,2,1
B. 4,3,1,2,5
C. 2,3,5,4,1
D. 2,1,5,4,3
3. (单选题)链式栈结点为:(data,link),top指向栈顶.若想摘除栈顶结点,并将删除结点的值保存到x中,则应执行操作
A. x=top->data;top=top->link;
B. top=top->link;x=top->link;
C. x=top->link;
D. x=top;top=top->link;
4. (单选题)循环队列的队满条件为( )。
A. (sq.rear+1)%maxsize==sq.front
B. sq.rear==sq.front
C. (sq.rear+1)%maxsize==(sq.front+1)%maxsize
D. (sq.rear+1)%maxsize==sq.front+1
5. (单选题)设栈S和队列Q的初始状态为空,元素e1、e2、e3、e4、e5和e6依次通过S,一个元素出栈后即进入Q,若6个元素出队的序列是e2、e4、e3、e6、e5和e1,则栈S的容量至少应该是
A. 6
B. 4
C. 2
D. 3
6. (单选题)循环队列存储在数组A[0..m]中,则入队时的操作为
A. rear=rear+1
B. rear=(rear+1)%(m-1)
C. rear=(rear+1)%(m+1)
D. rear=(rear+1)%m
7. (单选题)设计一个判别表达式中左、右括号是否配对出现的算法,采用( )数据结构最佳。
A. 线性表的链式存储结构
B. 线性标的顺序存储结构
C. 栈
D. 队列
8. (单选题)链栈与顺序栈相比,有一个比较明显的优点,即( )。
A. 通常不会出现栈满的情况
B. 删除操作更方便
C. 不会出现栈空的情况
D. 插入操作方便
9. (单选题)某队列允许在其两端进行入队操作,但仅允许在一段进行出队操作,则不可能得到的顺序是
A. bacde
B. dbcae
C. dbace
D. ecbad
10. (单选题)循环队列A[0…m-1]存放其元素值,用front和rear分别表示队头和队尾,则当前队列中的元素数是( )。
A. (rear-front+m)%m
B. rear-front-1
C. rear-front+1
D. rear-front
11. (单选题)栈在 ( )中有所应用。
A. 函数调用
B. 递归调用
C. 前三个选项都有
D. 表达式求值
12. (单选题)设栈的输入序列是1,2,3,4,则( )不可能是其出栈序列。
A. 2,1,3,4
B. 4,3,1,2
C. 1,2,4,3
D. 1,4,3,2
13. (单选题)一个递归算法必须包括
A. 终止条件和迭代部分
B. 终止条件和递归部分
C. 迭代部分
D. 递归部分
🎯答案:
1-5:CBAAD
6-10:CCABA
11-13:CBB