队列 · 处理一串入队/出队操作
读入 m 个操作,每个是 E v(enqueue v,入队)或 D(dequeue,出队)。用队列处理,每遇到一个 D 就输出此刻出队的值;如果 D 时队列为空,输出 -1。所有输出在一行,空格分隔。
请补全 enqueue 和 dequeue(先进先出)。
易错点(正是错误实验室里的坑):①
dequeue前要判断队列是否为空(count > 0),空了就返回-1,别去读垃圾、别让count变负。② 队首出队后head前进,遵循 FIFO。
输入
- 第 1 行:操作数
m。 - 接下来
m行:E v(入队整数 v)或D(出队)。
输出
- 一行:每个
D操作输出的值(空队列出队为-1),空格分隔,每个值后跟一个空格。若没有D操作,只输出一个换行。
示例:输入 6 / E 1 / E 2 / D / E 3 / D / D → 输出 1 2 3 (先进先出,依次出 1、2、3)。