GESP 六级 · GESP 202406 C++ 六级 第 5 题

选择题 · 答案 B · 考点:数据结构

← 整套速查表 GESP 六级 全部真题

题目

在栈数据结构中,元素的添加和删除是按照什么原则进行的?( )

答案:B

考点

数据结构

解题思维

队列是先进先出(FIFO)结构。入队enqueue,出队dequeue。常用于BFS、缓冲处理。

常见错误

循环队列判别空和满的条件容易混淆。常用方法:牺牲一个元素空间来区分队空(front==rear)和队满((rear+1)%maxsize==front)。

详细解析(节选)

【考点】栈(Stack)|后进先出(LIFO)|数据结构特性

本题锁定 GESP 六级《数据结构》模块,命题人意在卡住多数考生对基础数据结构特性的模糊认知——六级要求区分栈、队列、链表等核心容器,而栈的“后进先出”特性正是区分其与队列“先进先出”的关键分水岭,也是从基础到进阶的必考门槛。

看到“栈”三个字,立刻联想到其核心定义:元素只能在栈顶进行入栈和出栈操作。因为最后进入的元素位于栈顶,所以它必然是第一个被弹出的,这就是“后进先出”的本质逻辑。这一类题的通法是:先确定数据结构名称,再回忆其访问规则(栈为 LIFO,队列为 FIFO),最后匹配选项。

选项 A 是队列(Queue)的 FIFO 特性,命题人设下“栈队列不分家”的陷阱,利用考生对基础容器特性记忆模糊,将“后进先出”误作“先进先出”;选项 C 把“栈顶”偷换为“最小值”,这是典型的算法逻辑干扰项,试图让考生用排序思维套用数据结构;选项 D 的“随机顺序”更是常识性错误,任何数据结构都有明确的存取规则。如果你只背“栈是 LIFO”这个结论,不理解栈顶操作的物理位置,就会掉进 A 选项的圈套。

若把“栈”换成“队列”,答案必变 A;若问“栈顶元素”而非“操作原则”,则考内存地址而非逻辑顺序。刷到此类题时,先问自己:“命题人想考我数据结构的核心操作规则,还是某种特定算法的实现?”

同考点真题

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