首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

一个栈的输入序列为a,b,c,d,若在入栈的过程中允许出栈,则可能得到的出栈序列是什么?该怎么解决

2014-06-17 
一个栈的输入序列为a,b,c,d,若在入栈的过程中允许出栈,则可能得到的出栈序列是什么?一个栈的输入序列为a,b

一个栈的输入序列为a,b,c,d,若在入栈的过程中允许出栈,则可能得到的出栈序列是什么?
一个栈的输入序列为a,b,c,d,若在入栈的过程中允许出栈,则可能得到的出栈序列是什么?

请大虾们帮忙分析一下,给出结果和注解... 小弟非常感谢!!

[解决办法]
所有可能的出栈次序如下:
abcd abdc acbd acdb
adcb bacd badc bcad
bcda bdca cbad cbda
cdba dcba
[解决办法]
卡特兰数
[解决办法]
栈的问题就是先进后出,且进栈后即可立即出栈,我举个不可能的列子,你更容易理解些:
[解决办法]

cadb;如果c在第一位,那么说明栈里边已经存在a、b(都在c前边进栈),则a先进,那么a就不可能先出

热点排行