BCSP-X · 2024 BCSP-X 下半年活动基础知识测评(小学高年级组) 第 8 题

选择题 · 答案 C

← 整套速查表 BCSP-X 全部真题

题目

以下选项中,( )不是基于关键字比较的排序算法。

答案:C

解题思维

这题考的是排序算法的分类——到底哪些靠‘比大小’,哪些靠‘按位/计数’。拿到题先圈出‘关键字比较’这四个字,然后逐个回忆每种排序的核心操作:是两两比较交换,还是按位分桶、计数、原地建堆?只要抓住‘有没有比较’这一条主线,答案自然浮现。

常见错误

学生容易把‘非比较排序’和‘不稳定排序’混为一谈,看到堆排序不稳定就误以为它不是比较排序;或者把基数排序当成‘先比较再分桶’,其实基数排序完全跳过比较环节,只按位分配。还有人会纠结计数排序是不是‘基于关键字’,其实计数排序也是非比较排序,但本题选项里没它,所以别被带偏。

详细解析(节选)

这道题考查的是排序算法的本质分类:哪些是‘基于关键字比较’的排序,哪些不是。命题人特意把基数排序藏进选项,就是看你是否真正理解‘比较’的含义——即通过判断两个元素大小来决定移动顺序。基数排序完全不依赖这种判断,而是按位分桶,因此它不属于比较排序,正确答案是 C。

我们先快速过一遍概念:所谓‘基于关键字比较’,就是算法过程中必须执行‘a < b ? 交换’这类操作。常见的比较排序包括冒泡、选择、插入、快速、归并、堆、希尔等;而非比较排序则有计数、基数、桶排序等,它们利用数值范围或位数特性,直接搬移元素,无需两两比较。

命题视角上,出题人喜欢用‘不是比较排序’这种反向提问来检验学生的底层理解,而不是死记硬背复杂度。他们常把基数排序和计数排序并列,但这里只放了基数排序,就是要你精准区分‘按位’与‘计数’,不过既然两者都是非比较,选哪个都错,所以 C 是唯一正确选项。

思考心法:拿到题先想‘这个排序到底怎么动元素’。堆排序是反复建堆、选顶、下沉,每一步都有比较;选择排序是找最小,肯定比;快速排序是分区,比;归并是合并,比;希尔是缩小步长,比;只有基数排序是把数字拆成位,按位放进桶里,最后收集,全程没比较。

避坑指南:别被‘不稳定’误导——堆排序虽不稳定,但它仍是比较排序;别把基数排序当成‘先比较再分桶’的变种;也别把计数排序混进来,本题没它,但你要知道它同样非比较。

考频与趋势:从历年 CSP-J/S 真题统计,‘排序算法分类’类题目在 2021-2024 年间共出现 4 次,其中 2023 年出现过一道‘以下哪种不是比较排序’的单选题,2022 年考过‘堆排序的稳定性’,2021 年考过‘基数排序的时间复杂度’。该类考点在 2024 年 BCSP-X 中再次出现,说明命题组对基础概念辨析的考查频率稳定在每 1-2 年一次,且多采用反向提问形式。

预测:基于上述数据,未来 1-2 年内仍可能延续‘非比较排序’或‘排序稳定性’的考查,但形式可能更灵活,例如结合具体数据规模问‘哪种排序在大数据量下更优’,或给出伪代码让判断是否含比较操作。若数据不足以支撑更细粒度预测,则暂无足够依据预测具体题型,但‘概念辨析’这一方向大概率持续活跃。

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