第三章 栈和队列
一、 选择题
1.以下不是栈的基本运算的是(  )
  A) 删除栈顶元素              B) 删除栈底元素
  C) 判断栈是否为空            D) 将栈置为空栈
2.若进栈序列为1,2,3,4,进栈过程中可以出栈,则下列不可能的一个出栈序列是( )
  A) 1,4,3,2                      B) 2,3,4,1
  C) 3,1,4,2                      D) 3,4,2,1
3.栈和队列的共同点( )
A) 都是先进先出             
B) 都是后进先出
  C) 只允许在端点处插入和删除元素
  D) 没有共同点
4.若已知一个进栈序列是1,2,3,……,n,其输出序列是p1,p2,vp3,……pn, p1=n, pi(1<i<n)( )
A) I                          B) n-i
  C) n-i+1                      D) 不确定
5.判断一个栈ST(最多元素为MaxSize)为空的条件是( )
A) ST->top==1                B) ST->top==-1
  C) ST->top!=MaxSize-1          D) ST->top==MaxSize-1
6.向一个栈指针为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;
7.在一个链式队列中.假设f和r分别为队头和队尾指针,则插入s所指的结点运算是()
  A) f->next=s;f=s;                B) r->next=s;r=s;
C) s->next=s;r=s;                D) s->next=f;f=s;
8.在一个链式队列中,假设fr分别为队头和队尾指针,则删除结点的运算是()
  A) r=f->next;                  B) r=r->next;
C) f=f->next;                  D) f=r->next;
9.下列关于线性表,栈和队列叙述,错误的是()
  A) 线性表是给定的n(n必须大于零)个元素组成的序列
B) 线性表允许在表的任何位置进行插入和删除操作
C) 栈只允许在一端进行插入和删除操作
D) 队列只允许在一端进行插入一端进行删除
10.一个队列的入队序列是1,2,3,4,则队列的输出序列是()
  A) 4,3,2,1                      B) 1,2,3,4
C) 1,4,3,2                      D) 3,2,4,1
11.设初始输入序列为1,2,3,4,5,利用一个栈产生输出序列,下列()序列是不可能通过栈产生的.
  A) 1,2,3,4,5                      B) 5,3,4,1,2
C) 43,2,1,5                      D) 3,4,5,2,1
空字符串是什么
12.设栈s的初始状态为空,6个元素的入栈顺序为e1,e2,e3,e4,e5e6.若出栈的顺序是e2,e4, e3,e6,e5,e1,则栈s的容量至少应该是()
  A) 6                            B) 4
C) 3                            D) 2
13.为了减小栈溢出的可能性,可以让两个栈共享一片连续存储空间,两个栈的栈底分别设在这片空间的两端,这样只有当( )时才可能产生上溢。
A.两个栈的栈顶在栈空间的某一位相遇
B.其中一栈的栈顶到达栈空间的中心点
C.两个栈的栈顶同时到达空间的中心点
D.两个栈均不空,且一个栈的栈顶到达另一个栈的栈顶
14.若进栈序列为3579,进栈过程中可以出栈,则(  不可能是一个出栈序列。
A.7,5,3,9                          B.9,7,5,3
C.7,5,9,3                          D.9,5,7,3
15.数组Q[0……n-1]用来表示一个环形队列,f为当前对头元素的前一位置,r为队尾元素的位置,假定队列中元素的个数总小于n,计算队列中元素个数的公式为(  )。
A.r-f                              B.n+f-r
C.n+r-f                            D.(n+r-f)mod n
16.4个元素a1a2 a3a4 依次入栈,入栈过程中允许元素出栈,假设某一时刻站的状态是a3(栈顶)、a2a1、(栈底),则不可能的出栈顺序是(  )。
A. a4, a3, a2 , a                      B. a3, a2 ,a4,a1
C. a3, a1 ,a4 ,a2                  D. a3,a4, a1, a2
17.与数据元素本身的形式、内容、相对位置、个数无关的数据是( )。
A.存储结构                        B.存储实现
C.逻辑结构                        D.运算实现
18.设用一个数组A[1……N]来存储一个栈,令A[n]为栈底,用整型变量T指示当前栈顶位置,A[T]为栈顶元素。当从栈中弹出一个元素时,变量T的变化为(  )。
A.T=T+1                          B.T=T-1
C.T不变                          D.T=n
19.有六个元素1、2、3、4、5、6的顺序进栈,下列( )不是合法的出栈序列。
A.2、3、4、1、6、5                B.3、2、4、6、5、1
C.4、3、1、2、5、6                D.5、4、6、3、2、1
20.一个栈的入栈顺序是a、b、c、d、e,则栈的不可能输出序列是( )。
A.e、d、c、b、a                    B.d、e、c、b、a
C.d、c、e、a、b                    D.a、b、c、d、e
21.设计一个判别表达式左、右括号是否配对出现的算法,采用( )数据结构最佳。
A.线性表的顺序存储结构            B.栈
C.队列                            D.线性表的链式存储结构
22.下面4种内排序方法中,要求内存容量最大的是(  )。
A.插入排序                        B.选择排序
C.快速排序                        D.归并排序
23.栈的插入和删除操作在( )进行。
A.栈顶                            B.栈底
C.任意位置                        D.指定位置
24.向顺序栈中压入新元素时,应在( )。
A.先移动栈顶指针                    B.先存入元素,再移动栈顶指针
C.先后次序无关紧要                  D.同时进行
25.链式栈与顺序栈相比,一个比较明显的优点是( )。
A.插入操作更加方便                  B.通常不会出现栈满的情况
C.不会出现栈空的情况                D.删除操作更加方便
26.设一列顺序为1,2,3,4,5,6通过栈操作可以得到( )的输出序列。
A.3,2,5,6,4,1                  B.1,2,3,4,5,6
C.6,5,4,3,2,1                  D.4,5,3,2,6,1
27.设一个栈的输入序列为A,B,C,D,则借助一个栈所得到输出序列不可能是( ).
A.A,B,C,D                          B.D,C,B,A
C.A,C,D,B                          D.D,A,B,C
28.若用一个大小为6的数组来实现循环队列,且当前rear和fornt的值分别为0和3。从当前队列中删除一个元素,再加入两个元素后,rear和front的值分别为( )。
A.1和5                            B.2和4
C.4和2                            D.5和1
29.由两个栈共享一个向量空间的好处是( )。
A.减少存取时间,降低下溢发生的机率  B.节省存储空间,降低上溢发生的机率
C.减少存取时间,降低上溢发生的机率  D.节省存储空间,降低下溢发生的机率
30.设一数列的顺序为1,2,3,4,5,6,通过队列操作可以得到( )的输出序列。
A.3,2,5,6,4,1                          B.1,2,3,4,5,6
C.6,5,4,3,2,1                          D.4,5,3,2,6,1
31.从一个顺序队列中删除元素时,首先要(  )。
A.前移一位队首指针                  B.后移一位队首指针
C.取出队首指针所指位置上的元素      D.取出队尾指针所指位置上的元素
32.在一个顺序存储的循环队列中,队头指针指向队头元素的(  )。
A.前一个位置                        B.后一个位置
C.队头元素位置                      D.队尾元素位置
33.两栈共享数组存储空间,前一个栈的栈顶指针为p后一个栈的栈顶指针为q,能进行正常入栈操作的条件是(  )。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。