1.4个元素按A,B,C,D顺序连续进S栈,进行Pop(S,x)运算后,x的值是( C D ).
A.A
B.B
C.C
D.D
1.进栈(PUSH)算法
①若TOP≥n时,则给出溢出信息,作出错处理(进栈前首先检查栈是否已满,满则溢出;不满则作②);
②置TOP=TOP+1(栈指针加1,指向进栈地址);
③S(TOP)=X,结束(X为新进栈的元素);
2.退栈(POP)算法
①若TOP≤0,则给出下溢信息,作出错处理(退栈前先检查是否已为空栈, 空则下溢;不空则作②);
②X=S(TOP),(弹出/删除栈顶元素,把这个元素的值赋值给X):
③TOP=TOP-1,结束(栈指针减1,指向栈顶)。
Pop(S,x):弹出/删除栈顶元素,把这个元素的值赋值给x
2.初始化一个空间大小为5的顺序栈Ss后,Ss->top的值( A ).
A.是0
B.不定
C.不再改变
D.动态变化
顺序栈top=0,表示空栈
3.容量是10的循环队的头尾指针的位置S.rear为2,则队的尾元素的位置是( C ).
A.3
B.2
C.1
D.0
尾指针始终指向队列尾元素的下一个元素。因此尾元素位置为1
4.同一个栈内各元素的类型( A ).
A.必须一致
B.可以不一致
C.不能一致
D.不必不一致
同一个队也要求元素类型一致。因为在定义栈/队列的时候已经规定了保存数据的类型