设从键盘输入一整数的序列:a1, a2, a3,…,an,试编写算法实现:用栈结构存储输入的整数,当ai≠-1时,将ai进栈;当ai=-1时,输出栈顶整数并出栈。算法应对异常情况(入栈满等)给出相应的信息。
设从键盘输入一整数的序列:a1, a2, a3,…,an,试编写算法实现:用栈结构存储输入的整数,当ai≠-1时,将ai进栈;当ai=-1时,输出栈顶整数并出栈。算法应对异常情况(入栈满等)给出相应的信息。
相关考题:
将编号为0和1的两个栈存放于一个数组空间V[m]中,栈底分别处于数组的两端。当第0号栈的栈顶指针top[0]等于-1时该栈为空,当第1号栈的栈顶指针top[1]等于m时该栈为空。两个栈均从两端向中间增长。试编写双栈初始化,判断栈空、栈满、进栈和出栈等算法的函数。双栈数据结构的定义如下:Typedef struct{int top[2],bot[2]; //栈顶和栈底指针SElemType *V; //栈数组int m; //栈最大可容纳元素个数}DblStack
一个栈的入栈序列为a1,a2,a3,a4,a5,则此栈可能的输出序列是() A、a1,a2,a3,a4,a5B、a5,a4,a3,a2,a1C、a1,a5,a3,a4,a2D、a5,a1,a2,a3,a4
一个栈的入栈序列为a1,a2,a3,a4,a5,则此栈不可能的输出序列是 ( )A.a5,a4,a3,a2,a1B.a4,a5,a3,a2,a1C.a4,a3,a5,a1,a2D.a1,a2,a3,a4,a5
4个元素a1,a2,a3和a4依次入栈,人栈过程中允许栈顶元素出栈。假设某一时刻栈的状态是:则不可能的出栈序列是A.a4,a3,a2,a1B.a3,a2,a4,a1C.a3,a1,a4,a2D.a3,a4,a2,a1
四个元素a1、a2、a3和a4依次通过一个栈,在入栈过程中允许栈顶元素出栈。假设某一时刻栈的状态如下:则不可能的出栈序列是______。A.a4,83,a2,a1B.a3,a2,a4,a1C.a3,a1,a4,a2D.a3,a4,82,a1
设将整数1、2、3、4依次进栈,只要出栈时栈非空,则可将出栈操作按任何次序夹人其中;请回答下述问题:1.当人、出栈次序为Push(1),Pop(),Push(2),Push(3),Pop(),Push(4),Pop(),出栈的数字序列为何?(这里Push(i)表示i进栈,Pop()表示出栈)(26)2.能否得到出栈序列1、4、2、3和1、4、3、2?答案为(27)。3.请分析研究1、2、3、4的24种排列中,(28)序列是可以通过相应的入、出栈操作得到的。A.1,3,4B.1,4,2,3C.1,4,3D.3,4,1
设将整数1,2,3,4,5依次进栈,最后都出栈,出栈可以在任何时刻(只要栈不空)进行,则出栈序列不可能是A.23415B.54132C.23145D.15432