已知栈S 初始为空,用 I 表示入栈、O表示出栈,若入栈序列为a1a2a3a4a5,则通过栈 S 得到出栈序列a2a4a5a3a1的合法操作序列
举一反三
- 智慧职教: 若一个栈的进栈序列是1、2、3、4,那么要求出栈序列为3、2、1、4时,进、出栈操作的顺序应该是 ()。(注:所给顺序中,I表示进栈操作,O表示出栈操作)
- 若一个栈的输入序列为{1, 2, 3, 4, 5},则不可能得到{3, 4, 1, 2, 5}这样的出栈序列。 ()
- 设将整数1,2,3,4依次进栈,但只要出栈时栈非空,则可将出栈操作按任何次序夹入其中,请回答下述问题:(1)若入、出栈次序为Push(1),Pop(),Push(2),Push(3),Pop(),Pop(),Push(4),Pop(),则出栈的数字序列为何?(这里Push(i)表示i进栈,Pop()表示出栈)(2)能否得到出栈序列1423和1432?并说明为什么不能得到或者如何得到。(3)请分析1,2,3,4的24种排列中,哪些序列是可以通过相应的入出栈操作得到的。
- 若进栈序列是1、2、3、4、5、6,且进栈和出栈可以穿插进行,则可能出现的出栈序列是()。 A: 3、2、6、1、4、5 B: 3、4、2、1、6、5 C: 1、2、5、3、4、6 D: 5、6、4、2、3、1
- 设栈初始为空,元素1 2 3依次入栈,利用栈结构,不能得到的出栈序列是( )。 A: 1 2 3 B: 2 3 1 C: 3 2 1 D: 3 1 2