当前位置: 代码迷 >> 综合 >> ACM基础(四):排序之基数排序 Radix Sort
  详细解决方案

ACM基础(四):排序之基数排序 Radix Sort

热度:69   发布时间:2024-01-12 15:32:48.0

文章目录

  • 一、思想


一、思想

按照位数从低到高排序:

  • 位数:个位、十位、百位……这个位数 Digit。
  • 从低到高:这个被称作LSD(Least Significant Digit)。
    PS:如果是从高到底(MSD,Most Significant Digit),那么在排高位后再排低位就得顾及高位的顺序。比如,19和21,第一次是[1]9和[2]1,第二次就是2[1]和1[9],还得按照某种复杂的规则纠正成19、21。

在这里插入图片描述

/* A:待排序数组和输出结果d:A中的数的最大位数*/
RADIX-SORT(A, d)// 按照各位数遍历排序各位数for i ← 1 to d// 使用稳定的排序才保证整体的基数排序是稳定排序do	使用一个稳定的排序来按照位数i排序数组A

【问题】
可不可以调用插入排序,只需要修改下插入排序的比较规则,这样就不需要外存了。

  相关解决方案