题目
答案:B
考点
解题思维
看到“先进先出”四个字,脑子里立刻要蹦出“排队”这个生活场景,这题就是考这个生活常识和术语的对应,队列就是那个排队的数据结构。
常见错误
最容易把队列和栈搞反,因为英文缩写 FIFO 和 LIFO 长得有点像,或者死记硬背却忘了实际含义。还有学生看到“哈希表”就以为它也能存顺序,其实哈希表是散列存取,跟顺序无关。二叉树更离谱,那是树结构,跟线性表的 FIFO 完全搭不上边。
详细解析(节选)
考点与概念
这道题考查的是线性表的基本分类,核心概念就是“先进先出”(FIFO)和“后进先出”(LIFO)。
- 队列(Queue):就像你在超市排队买奶茶,先来的先买,后来的只能等,这就是典型的先进先出,所以队列是 FIFO 的线性表。
- 栈(Stack):就像一摞盘子,你只能拿最上面的,最后放上去的盘子反而最先被拿走,这就是后进先出,所以栈是 LIFO 的线性表。
- 哈希表:是键值对结构,通过哈希函数定位,跟顺序无关。
- 二叉树:是树形结构,层级分明,不属于线性表。
命题视角
命题人喜欢用生活化的例子来考术语定义,比如“排队”对应队列,“叠盘子”对应栈。这道题就是直接问“先进先出”是什么,属于送分题,但容易在概念模糊时选错。他们常把 FIFO 和 LIFO 混在一起考,或者把队列和栈的特征反过来描述来挖坑。
同考点真题
- 第 22 题· NOIP 2010 普及组初赛试题 · 答案 49看解析 →
- 第 28 题· NOIP 2012 提高组初赛试题 · 答案 return(k%c)+1s[n]=q[tail]q[head]q[tail]next(head)看解析 →
- 第 28 题· NOIP 2016 提高组初赛试题 · 答案 dist[1]=0dist[x]+weight[j]<dist[point[j]]weight[j]+dist[x]<dist[point[j]]dist[point[j]]>weight[j]+dist[x]dist[point[j]]>dist[x]+weight[j]visit[x]=0weight[j]+dist[x]==dist[point[j]]dist[x]+weight[j]==dist[point[j]]visit[point[j]]=1看解析 →
- 第 9 题· CSP 2020 提高级第一轮 · 答案 C看解析 →
- 第 19 题· CSP 2021 提高级第一轮 · 答案 DAC看解析 →