问题
单项选择题
假定栈用顺序的方式存储,栈类型stack定义如下:
TYPE stack=RECORD 1..m0
A:ARRAY[1..m0]OF datatype;
t:0..mO;
END;
下面是栈的一种基本运算的实现;
PROCEDURE xxxx(VAR s:stack)
BEGIN
IF s.t=0
THEN print(underflow’)
ELSE s.t:=s.t-1;
END
请问这是栈的哪一种基本运算( )
A.栈的推入
B.栈的弹出
C.读栈顶元素
D.将栈置为空栈
答案
参考答案:B
解析: 栈的修改是按后进先出的原则进行的。每次删除(退栈)的总是当前栈中“最新”的元素,即最后插入(进栈)的元素,而最先插入的被放在栈的底部,要到最后才能删除。