看了很多帖子,还是很模糊啊。不谈代码,光谈思想。
字符A、B、C依次进入一个栈,按出栈的先后顺序组成不同的字符串。怎么理解那一个不能成立的字符窜组合,为什么它不成立,剩下5个是怎么成立的。
诚求:理解栈的出入顺序。
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
5条回答 默认 最新
战在春秋 2017-06-10 02:44关注一共有6种组合:
1) ABC 即A进A出,B进B出,C进C出
2) ACB 即A进A出,B进C进,C出B出
3) BAC 即A进B进,B出A出,C进C出
4) BCA 即A进B进,B出C进,C出A出
5) CBA 即A进B进,C进C出,B出A出栈的性质是 后进先出, 以上5种组合是可以的。
6) CAB
这是不行的,因为C已经出栈,B在A的上面,这时,A在B前面出来是不可能的。想象成一个水杯,往水杯里放积木,因为水杯只有上面的开口,
显然只有压在上面的积木出来后,下面的积木才能出来。用心回答每个问题,如果对您有帮助,请采纳答案好吗,谢谢!
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报