第三章 栈和队列:主要包括栈和队列在两种存储结构上实现的基本操作,栈的应用(表达式求值和共享栈等)。3.1栈的定义与运算:栈的初始化、入栈、出栈
3.2栈的应用(一):表达式求值
3.3栈的应用(二):共享栈
3.4队列定义与链式存储:链队列及其算法
3.5循环队列:循环队列及其算法
3.1栈的基本概念和顺序栈类的定义和实现:栈的基本概念和特性,顺序栈类的定义和实现
3.2链式栈类的定义和实现:栈的链式存储,链式栈类的定义和实现
3.3队列的基本概念和顺序循环队列类的定义和实现:顺序队列的基本情况,循环顺序队列类的定义和实现
3.4链队列类的定义和实现:队列的链式存储,链式队列类的定义和实现
[单选题]假定利用数组a[n]顺序存储一个栈,用top表示栈顶指针,top==-1表示栈空,并已知栈未满,当元素x进栈时所执行的操作为

选项:[a[++top]=x, a[top++]=x, a[top--]=x, a[--top]=x]
[单选题]设数组Data[0..m]作为循环队列SQ的存储空间,front为队头指针,rear为队尾指针,则执行出队操作的语句为

选项:[front=front+1, front=(front+1)%(m+1), rear=(rear+1)%m, front=(front+1)% m]
[单选题]循环顺序队列是将顺序队列的存储区域看成是一个首尾相连的环,首尾相连的状态是通过数学上的哪种运算实现的?

选项:[减运算, 求和, 除运算, 求余]
[单选题]在循环顺序队列中,假设以少用一个存储单元的方法来区分队列判满和判空的条件,front和rear分别为队首和队尾指针,它们分别指向队首元素和队尾元素的下一个存储单元,队列的最大存储容量为maxSize,则队列的判空条件是

选项:[front==rear+1, front!=rear, front==(rear+1)% maxSize, front==rear]
[单选题]在不带表头结点的链栈中,若栈顶指针top直接指向栈顶元素,则将一个新结点p入栈时修改链的两条对应语句为

选项:[top=p;p.next=top;, top.next=p;p=top;, p.next=top;top=p;, p=top;top.next=p.next;]
[单选题]栈和队列是一种非线性数据结构

选项:[对, 错]
[单选题]在链栈中,进行出栈操作时

选项:[无需对栈作任何差别, 需要判断栈是否满, 需要判断栈是否为空, 需要判断栈元素的类型]
[单选题]在循环顺序队列中,假设以少用一个存储单元的方法来区分队列判满和判空的条件,front和rear分别为队首和队尾指针,front指向队首元素,rear指向队尾元素的下一个存储单元,队列的最大存储容量为maxSize,则队列的判满条件是

选项:[front!=rear, front==(rear+1)% maxSize, front==rear, front==rear+1]
[单选题]在顺序栈中,若栈顶指针top指向栈顶元素的下一个存储单元,且顺序栈的最大容量是maxSize,则顺序栈的判空条件是

选项:[top==0, top==-1, top==maxSize, top==maxSize-1]
[单选题]若将整数1、2、3、4依次进栈,则不可能得到的出栈序列是

选项:[4321, 1423, 1324, 1234]
[单选题]若让元素C,h,i,n,a依次进栈,则出栈次序不可能出现在( )种情况。

选项:[a,n,i,h,C, h,C,a,n,i
, h,i,a,n,C
, n,i,C,h,a]
[单选题]若已知一个栈的入栈序列是1,2,3,…,n,其输出序列为p1,p2,p3,…,pn,若p1=n,则pi为( )。

选项:[n-i, 不确定
, n-i+1, i]
[单选题]设计一个判别表达式中左,右括号是否配对出现的算法,采用( )数据结构最佳。

选项:[线性表的顺序存储结构, 队列
, 线性表的链式存储结构, 栈
]
[单选题]若栈采用顺序存储方式存储,现两栈共享空间V[1..m],top[i]代表第i个栈(i=1,2)栈顶,栈1的底在V[1],栈2的底在V[m],则栈满的条件是( )

选项:[top[1] = top[2]
, top[1]+ top[2]=m
, |top[2]-top[1]|=0
, top[1]+1= top[2]
]
[单选题] 为解决计算机主机与打印机间速度不匹配问题,通常设一个打印数据缓冲区。主机将要输出的数据依次写入该缓冲区,而打印机则依次从该缓冲区中取出数据。该缓冲区的逻辑结构应该是( )。

选项:[有序表
, 队列, 栈, 线性表]
[单选题]用链接方式存储的队列,在进行删除运算时( )。

选项:[仅修改尾指针, 头、尾指针可能都要修改
, 头、尾指针都要修改
, 仅修改头指针
]
[单选题]栈和队列的共同点是( )。

选项:[都是先进先出, 没有共同点
, 只允许在端点处插入和删除元素, 都是先进后出
]
[单选题]设栈S和队列Q的初始状态为空,元素e1、e2、e3、e4、e5和e6依次进入栈S,一个元素出栈后即进入Q,若6个元素出队的序列是e2、e4、e3、e6、e5和e1,则栈S的容量至少应该是( )。

选项:[4, 2, 3, 6
]
[单选题]循环队列存储在数组A[0..m]中,则入队时的操作为( )。

选项:[rear=rear+1, rear=(rear+1)%(m+1)
, rear=(rear+1)%m, rear=(rear+1)%(m-1)
]
[单选题] 递归过程或者函数调用时处理参数和返回地址需要用到( )数据结构。

选项:[线性表
, 队列
, 二叉树
, 栈
]

温馨提示支付 ¥3.00 元后可查看付费内容,请先翻页预览!
点赞(0) dxwkbang
返回
顶部