编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛  
全能 ASP / PHP / ASP.NET 主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付学习型 ASP/PHP/ASP.NET 主机 30元/年
发新话题
打印

请教一个问题

请教一个问题

假定有三个元素A B C,按所列次序进栈,试给出全部可能的出栈序列和不可能的出栈序列.答案给的是ABC,ACB,BAC,BCA,CBA五种均可能,只有CAB不可能,为什么,栈不是先进后出的吗,那应该只有CBA一种才对

TOP

可以边进边出:
比如A进栈,然后A出栈,再B进栈,B出栈...
或是A进栈,B进栈,B出栈,A出栈......
或是A进栈,B进栈,C进栈,C出栈..........
i like linux...

TOP

学会全面的考虑问题

要想搞开发,就要有发散性思维。
再学会挑它的刺。

TOP

回复 2# zjl138 的帖子

豁然开朗啊,我自己看书遇到问题还真是麻烦,多谢

TOP

回复 1# dong09032007 的帖子

CAB——说明AB已经进栈,而进栈的顺序一定是先A后B,那么要出栈时只能是B先出来,即只能是CBA,而不能是CAB
ABC——说明A、B、C都是一进栈就马上出栈
ACB——A一进栈就直接出栈,B进栈后C又进栈,然后CB再出栈
BAC、BCA、CBA——同理分析

TOP

发新话题