基数排序

先把各个数以个位数不同分到不同的队列中
如果一个队列多个元素用链表连起来

第一趟分配
然后进行第一趟收集

应为我们想得到递减
所以我们从个位数高到低收集


然后第二趟分配
根据第一趟得到的结果
以十位数分配

这里注意!
因为第一趟按个位分的,所以个位大的应该先入队,这就能保证
链表的第一个元素经过n次分配后,他的后n个元素肯定大于链表其他元素的后n个
这里的队列6
的68>66,当然第三趟分配后又不一样,这就能保证最后的序列有序

第二趟收集呗

这里最后收集的相当于后两位数的有序排序
第三趟分配

这里十位大的优先入队,能保证996>985(百位相同十位数更大,肯定链表头最大呗)

第三趟收集就排序完毕,一共三位数

对上面步骤总结
注意,按照权重递增
而且设置空队列的个数为每个关键字可能取值的范围
比较的序列中的元素必须初始的长度相同

算法效率分析

稳定性

基数排序应用

多关键字排序

总结



















