相关问题 22-23
堆栈 A 的条目为 a、b、c(顶部为“a”),堆栈 B 为空,如下图所示。
从堆栈 A 弹出的条目可以打印或推送到堆栈 B。从堆栈 B 弹出的条目只能打印。
在这种排列中,下列排列的 a、b、c 中哪些不能打印?
(i) bac
(ii) bca
(iii) cab
(iv) abc
(A) (i)、(ii) 和 (iii)
(B) (iv) 仅
(C) (iii) 仅
(D) (ii) 和 (iii) 仅答案: (C)
说明:按照以下步骤打印 bac。
1) 从堆栈 A POP 元素 ‘a’,将 ‘a’ 推入堆栈 B。
2) 来自 A 的 POP 元素 ‘b’,打印它。
3) 从 B 中取出 POP 元素 ‘a’,并打印出来。
4) 从 A 中取出 POP 元素 ‘c’,并打印出来。
现在,perumtation bac 已经打印出来了。
同样,我们可以打印 bca 和 abc,但不能打印 cab。
这个问题的测验