最近在复习数据结构,所以想把平时上课做的习题做个总结,如果大家有遇到这方面的问题就可以参考一下了,废话不多说,直接开始吧。
题目中的栈和队列均以指针命名,比如栈s s表示指向栈的指针。 数组Q[0…m] 表示数组的最小下标是0,最大下标是m 数组q[M]表示数组的空间大小为M,对应的下标 0…M-1
1、单选题
在栈中,下列说法正确的是(C )。
A.每次插入总是在栈底,每次删除也总是在栈底。
B.每次插入总是在栈顶,每次删除总是在栈底。
C.每次插入总是在栈顶,每次删除也总是在栈顶。
D.每次插入总是在栈底,每次删除总是在栈顶。
2、单选题
设有一个栈,按A、B、C、D的顺序进栈,则下列(B )为可能的出栈序列。
A. CDAB
B. ACDB
C. DBAC
D. DCAB
C、A进 A出 B进 C进 C出 D进 D出 B出
3、单选题(5.0分)
顺序栈的上溢是指(D )。
A.栈满时作退栈运算
B.栈空时作退栈运算
C.栈空时作进栈运算
D.栈满时作进栈运算
下溢:栈空时作退栈运算
4、单选题
设栈S的初始状态为空,现有五个元素组成的序列1,2,3,4,5,对该序列在栈S上依次进行PUSH,PUSH,POP,PUSH,POP,PUSH,PUSH操作,出栈的元素序列是(B)。
A.3,4
B.2,3
C.5,4,3,2,1
D.2,1
5、单选题
在顺序栈s中,当做出栈处理时,s->top变化为(B )
A. s->top不变
B. s->top- -
C. s->top++
D. s->top=0
6、单选题
向一个栈顶指针为hs的链栈中插入一个*s结点时,应执行(B)。
A. s->next=hs->next;hs->next=s;
B. hs->next=s;