单选题 设栈S和队列Q的初始状态均为空,元素a,b,c,d,e,f,g依次进入栈S。如果每个元素出栈后立即进入队列Q,且7个元素出队的顺序为b,d,c,f,e,a,g,则栈S的容量至少是______。
  • A.1
  • B.2
  • C.3
  • D.4
【正确答案】 C
【答案解析】[解析] 根据队列的FIFO性质,出队顺序与入队顺序一致,也就是说,与出栈顺序一致。如果用S表示进栈,用X表示出栈,按照题意,进栈和出栈序列见下表。
{{B}}进栈与出栈情况{{/B}}
进栈序列 a b
进出操作 S S X S S X X S S X X X S X
栈的内容 a ab a ac acd ac a ae aef ae a g
出栈序列 b d c f e a g
由表可知,栈中最多时有3个元素,所以栈的容量最少为3。