CSP-S 提高级 · CSP 2024 提高级第一轮 第 5 题

选择题 · 答案 B · 考点:队列(queue)

← 整套速查表 CSP-S 提高级 全部真题

题目

下面哪个数据结构最适合实现先进先出(FIFO)的功能?( )

答案:B

考点

队列(queue) 讲解 →队列(queue) 真题汇总 →

解题思维

这题就是考概念辨析,拿到题先想“先进先出”对应什么生活场景,一眼锁定队列,别被栈和线性表的通用描述带偏。

常见错误

最容易错选 A 栈,把 LIFO 记反了;或者选 C 线性表,觉得它包含队列所以也对,其实线性表只是统称,没有天然 FIFO 约束。还有少数人会纠结 D 二叉搜索树,那是按大小排序的,跟进出顺序没关系。

详细解析(节选)

这道题考查的是数据结构的基本特性,核心就是区分几种常见线性结构的进出规则。队列(queue)是典型的先进先出(FIFO)结构,就像排队买票,先来的人先办完走人;栈(stack)则是先进后出(LIFO),像弹夹里的子弹,最后压进去的先弹出来;线性表(list)只是描述元素排成一条线的通用概念,本身不规定怎么进出;二叉搜索树(BST)按大小关系存数据,跟 FIFO 完全无关。命题人常在这里挖坑,比如用生活化描述混淆栈和队列,或者故意把线性表写得模棱两可,诱导学生选错。拿到题先明确 FIFO 的定义:最早插入的元素必须最先被取出。A 栈只允许在栈顶操作,后进先出,直接排除;B 队列在队尾插入、队头删除,完全符合;C 线性表虽然包含队列,但作为选项它太宽泛,没有天然 FIFO 约束,不能选;D 二叉搜索树是树形结构,基于比较,排除。避坑方面,C++ 里 std::queue 是 FIFO,std::stack 是 LIFO,std::deque 是双端队列,面试竞赛都要分清。队列在历年考频很高,题库共 46 题,覆盖 9 个级别,2024 年考了 12 题,2025 年 13 题,2026 年 9 题,说明命题人很爱考这个基础点。预测:既然队列已经连续多年高频出现,未来可能继续以单选或判断形式考查 FIFO 与其他结构的区别,也可能结合具体操作(入队出队顺序)出计算题。

同考点真题

在 OI伴学 里做这道题
登录后可计时作答、查看完整六段式解析,并按你的错题自动生成同类练习。
去刷题先做一次 AI 学情诊断