正在载入在线练习界面,本页内容可直接阅读…
AK CSP › CSP-J 2025 第一轮真题 › 第 15 题
CSP-J 2025 第一轮 第 15 题:栈 S 和队列 P 模拟处理序列 7,5,8,3,1,4,2 后队列 P 的内容
题目
给定一个初始为空的整数栈 $S$ 和一个空的队列 $P$。我们按顺序处理输入的整数队列 $A: 7, 5, 8, 3, 1, 4, 2$。对于队列 $A$ 中的每一个数,执行以下规则:如果该数是奇数,则将其压入栈 $S$;如果该数是偶数,且栈 $S$ 非空,则弹出一个栈顶元素,并加入到队列 $P$ 的末尾;如果该数是偶数,且栈 $S$ 为空,则不进行任何操作。当队列 $A$ 中的所有数都处理完毕后,队列 $P$ 的内容是什么?

选项
- A. $5,1,3$
- B. $7,5,3$
- C. $3,1,5$
- D. $5,1,3,7$
答案
A
题解
栈的特点是后进先出。遇到奇数就入栈,遇到偶数就把栈顶元素弹出,加入队列 \(P\) 的末尾。注意:偶数本身不加入 \(P\)。
逐个模拟(栈从左到右为栈底到栈顶):
| 处理的数 | 操作 | 栈 \(S\) | 队列 \(P\)(队首到队尾) |
|---|---|---|---|
| 7 | 7 入栈 | 7 | 空 |
| 5 | 5 入栈 | 7, 5 | 空 |
| 8 | 弹出 5,加入 \(P\) | 7 | 5 |
| 3 | 3 入栈 | 7, 3 | 5 |
| 1 | 1 入栈 | 7, 3, 1 | 5 |
| 4 | 弹出 1,加入 \(P\) | 7, 3 | 5, 1 |
| 2 | 弹出 3,加入 \(P\) | 7 | 5, 1, 3 |
最终队列 \(P\) 为 \(5,1,3\),选 A。栈中剩余的 \(7\) 不需要再处理。
真题版权归 CCF 所有,本站仅用于非商业教学用途。页面加载后可直接在线作答,作答记录保存在本浏览器或账号中。 京ICP备2026056990号-1
京公网安备11010502062986号