现有队列Q与栈S,初始时Q中的元素依次是1,2,3,4,5,6(在队头),S为空。若仅允许下列3种操作: (1)出队并输出出队元素 (2)出队并将出队元素入栈 (3)出栈并输出出栈元素 则不可能得到的输出序列是( )。 A、1,2,5,6,4,3 B、2,3,4,5,6,1 C、3,4,5,6,1,2 D、6,5,4,3,2,1
AI智能判题可自动批改答案并给出反馈,每次使用将消耗 1个诺币
您当前的诺币数量: 个
AI正在判题,请稍候...
如果6在队头选A;如果1在队头选C。这里应该是说1在队头。
真有歧义,队头提示放在6后面,一般都以为6在队头吧
谁在队头我还得猜一下
首先,我们需要理解队列和栈的基本特性。队列是先进先出(FIFO)的数据结构,而栈是后进先出(LIFO)的数据结构。
分析选项: A、1,2,5,6,4,3:此序列可以实现。首先执行两次操作(1)出队并输出出队元素,得到1和2。然后执行操作(2)出队并将出队元素入栈两次,队列中剩下3,4,5,6,栈中有5,6。接着执行操作(3)出栈并输出出栈元素两次,得到6和5。再次执行操作(2)出队并将出队元素入栈,队列中剩下3,4,栈中有4。最后执行操作(1)出队并输出出队元素两次,得到4和3。
B、2,3,4,5,6,1:此序列可以实现。首先执行操作(2)出队并将出队元素入栈,然后连续执行操作(3)出栈并输出出栈元素五次,最后执行操作(1)出队并输出出队元素。
C、3,4,5,6,1,2:开始时我们不能直接得到3,4,5的出栈顺序,因此该序列不能实现。
D、6,5,4,3,2,1:此序列可以实现。首先执行操作(2)出队并将出队元素入栈五次,然后连续执行操作(3)出栈并输出出栈元素六次。
所以不可能得到的输出序列是C、3,4,5,6,1,2。
错了
A为什么可以?
C 队列先进先出,按次序出队,按...
登录后提交答案