java的栈:设栈S的初始状态为空,元素a,b,c,d,e,f,g依次入栈,写出a,b,c,e,d,f,g进出栈次序?

2025-03-27 12:26:40
推荐回答(3个)
回答(1):

栈是先进后出,a在输出的第一个,那么他肯定是在b进入前出来的,后面的bc也是同样情况
所以前六个是进a,出a,进b,出b,进c,出c
此时栈为空,后面输出序列为e,d,均在f之前,同理说明ed在f入栈之前出来的
次序是 进d,进e,出e,出d
此时栈又空了,出栈为f,g,次序和输入一样,就是和a,b的一样
所以是进f,出f,进g,出g
这样了全部过程就是进a,出a,进b,出b,进c,出c,进d,进e,出e,出d,进f,出f,进g,出g

回答(2):

栈的机制是控制入栈出栈顺序为后进先出,理解了这个就简单了:
a,b,c,d,e,f,g依次入栈,得到a,b,c,e,d,f,g的出栈顺序,那么逐个分析就得到答案了

回答(3):

栈是先进后出,a在第一个,那肯定是先进a,然后再出a。
d在有之后,肯定是d先进,e再进,e出,d再出
按照这个规律就能写出结果来了。