设将整数a,b,c,d依次进栈,而只要栈非空,就可以将出栈操作夹人入其中,请问能否得到出栈序adbc和dcba?为什么?

设将整数a,b,c,d依次进栈,而只要栈非空,就可以将出栈操作夹人入其中,请问能否得到出栈序adbc和dcba?为什么?

关于第一个adbc不行,观察顺序,a是第一个入栈的,同时a也是第一个出栈的可以,再观察第二个d,因为d是第二个出栈的,所以b,c此时一定在栈中,且c在栈顶,b在栈底,然后d进栈,d出栈,第二个d可以,然后第三个出栈的是b,但是b此时在栈底,只有c出栈以后d才可以出栈,所以第三个出栈的应该是c,与题目矛盾,所以错误
关于第二个dcba是可以的,就是a进栈,b进栈,c进栈,d进栈,然后出栈顺序就是d出栈,c到栈顶,c出栈,b到栈顶,b出栈,a到栈顶,a出栈结束顺序就是dcba