基数排序

来源:互联网 发布:牛大哥辅助软件 编辑:程序博客网 时间:2024/06/01 07:33

基数排序radix sort

所有的比较数值统一为同样的长度,数位短的补零,必须是正整数

 

属于分配时排序,另称 桶子法,根据兼职的部分资讯,将要排序的元素分配至某些桶中,借以达到排序的作用,是稳定性排序,复杂度是O(nlog(r)m),m为堆数,r为基数。

 

LSD基数排序适用于位数小的列数,若果位数多的话,使用MSD的效率比较好。MSD有高为基地开始进行分配,但在分配之后要在每个桶中建立子桶,进行完最低位的分配后在合并回数组中。

 

假设一串数值:62 14 59 88 16

第一步:分配10个桶,编号0-9,以个位数字为编号依次入桶

 

0 1  2  3 4  5  6 7  8  9   桶号

  62       14    16    88 59

 

输出结果  62 14 16  88 59

 

第二步:分配10个桶,编号0-9,以十位数字为编号依次入桶

 

0 1  2  3 4  5  6 7  8  9   桶号

 14           59  62   88

  16

输出结果,结束

 

 

 

 

 

 

1 0