GESP 五级 · GESP 202309 C++ 五级 第 23 题

判断题 · 答案 A · 考点:算法、函数

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

题目

C++ 语言中的 qsort 库函数是不稳定排序。

答案:A

考点

算法函数

解题思维

这题考的是对标准库函数背后算法特性的记忆,别被函数名带偏,直接联想qsort对应快速排序,快排最显著的标签就是不稳定,选A。

常见错误

很多同学只背了快排快、归并排序慢,却把稳定性搞混了,以为所有排序都是稳定的,或者把不稳定理解成排序慢,这种概念混淆是命题人最爱挖的坑,审题不清直接丢分。

详细解析(节选)

【考点】排序算法特性|稳定性分析|库函数知识

GESP 五级算法模块直接考查基础排序算法的性质记忆。qsort 对应快速排序实现,命题人把"稳定性"这个只有掌握排序算法分类的人才知道的细节挖出来卡人——绝大多数考生只背了"快排快",却忘了它不稳定的致命缺陷,导致把 A 错选成 B。

解题只需调用知识储备:qsort 基于快速排序,快速排序是典型不稳定排序(相等元素相对位置可能改变),因此题干陈述正确,选 A。这一类题的通法是:看到库函数名立刻联想其算法原型,再回忆该原型的稳定性、时间复杂度等核心性质,而非死记结论。

命题人最阴险的陷阱在于把"不稳定"这个专业术语包装成常识判断。选项 B 是典型的思维懒惰产物——考生没学过排序算法分类,看到"qsort"就凭感觉认为"排序都是稳定的",或者把"不稳定"误以为"排序速度慢"。如果你只背结论"qsort 正确"而不理解为什么正确,下次遇到"qsort 是否支持原地排序"这类变形题,照样会栽跟头。

站在命题人视角:如果把"qsort"改成"std::sort",答案就立刻翻转——C++11 起 std::sort 是稳定排序(内部实现为 introsort,但标准保证稳定性)。这题本质就是在考察你是否真正理解不同排序算法的特性差异,而非仅仅知道某个函数名。刷到类似题时,先问自己:"这个库函数背后是哪个算法?该算法稳定吗?"这样就不会被表面现象带偏。

【考频与趋势】排序基础在题库中常年霸榜,共考过 249 题,覆盖 9 个考试级别,其中 2025 年高达 57 题,2026 年 50 题,2024 年 51 题,呈现逐年攀升的态势;GESP 五级更是重灾区,已考 74 题。STL 标准库相关题目共 112 道,GESP 五级占 65 道,说明五级对基础库函数的考察非常密集。sort 排序专题考过 128 题,GESP 五级 67 题,五级考生必须把 sort、qsort、std::stable_sort 三种函数的稳定性、原地性、时间复杂度分清楚,否则很难拿满分。

【预测】基于数据,排序算法特性(尤其是稳定性)在未来 GESP 五级、六级乃至八级中仍将是高频考点,命题人可能会继续用"qsort vs std::sort"的对比形式出现,或者结合小数组排序过程让考生判断相等元素顺序是否改变。暂无足够依据预测具体年份的题型变化,但建议考生务必把三种核心排序函数的性质表背熟,做到看到函数名就能反应出算法原型和稳定性。

同考点真题

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