它是如何工作的?
Coddy 基数排序:数据结构与算法系列 课程的第 3 课,共 9 课。
基数排序每次处理一个数位,从最低位(个位)到最高位。每一轮都使用稳定排序,这样就能保留前几轮的排序结果。
分步过程:
- 使用稳定的计数排序,按个位排序。
- 按十位排序,遇到相同数位时保留之前的顺序。
- 继续处理百位、千位等,直到处理完最大数所在的数位。
示例:[170, 45, 75, 90, 2, 802, 24, 66]:
- 按个位排序:[170, 90, 2, 802, 24, 45, 75, 66]
- 按十位排序:[2, 802, 24, 45, 66, 170, 75, 90]
- 按百位排序:[2, 24, 45, 66, 75, 90, 170, 802]
处理完最后一位后,数组就完全排好序了。关键在于,稳定性会保留低位的排序结果,同时让高位逐步起作用。
亲手试试
这节课没有代码挑战。
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
基数排序:数据结构与算法系列中的所有课
自己练习: C 在线编译器