已知循环队列存储在维数组 A[0...n-1]中,且队列非空时front 和rear分别指向队头元素和队尾元索。若初始时队列为空,且要求第1个进人队列的元素存储在A[0]处,则初始时front和rear的值分别是( )
A. 0,0
B. 0,n-l
C. n-1, 0
D. n-1,n-1
查看答案
操作符包括‘+’,‘-’,‘*’,‘/’和‘(’,‘)'。将中缀表达式a+b-a*((c+d)/e-f)+g 转换为等价的后缀表达式ab+acd+e/f-*-g+时,用栈来存放暂时还不能确定运算次序的操作符,若栈初始时为空,则转换过程中同时保存在栈中的操作符的最大个数是()。
A. 5
B. 7
C. 8
D. 11
假设栈初始为空,将中级表达式a/b+(c*d-e*f)/g转换为等价的后缀表达式的过程中,当扫描到f时,栈中的元素依次是()。
A. +(*-
B. +(-*
C. /+(*-*
D. /+-*
已知程序如下:int S(int n){ return (n<=0)?0:s(n-1)+n;}void main({ cout<< s(1);}程序运行时使用栈来保存调用过程的信息,自栈底到栈顶保存的信息一次对应的是( )。
A. main( )->S(1)->S(0)
B. S(0)->8(1)->main( )
C. main( )->S(0)->S(1)
D. S(1)->S(0)->main( )
若用一个大小为6的数组来实现循环队列,且当前rear和front的值分别为0和3,当从队列中删除一个元素,再插入两个元素后,rear和front的值分别为()。
A. 1和5
B. 2和4
C. 4和2
D. 5和1