基数排序总结

来源:互联网 发布:python 折线图 编辑:程序博客网 时间:2024/04/29 03:28

1、这是一种稳定的排序;将数组元素从个位开始逐一的使用计数排序将数组元素按照所选位上值的大小从小到大进行排序;需要定义一个二维数组来保存相应位数值相同的数组元素(每一维申请的长度为需排序数组元素数加1,因为用0号位置元素来保存元素个数);然后遍历二维数组,有序的将元素赋到待排序数组中,再对每一元素从个位开始,每次高一位进行上述操作,直到最大元素位数。
2、两个函数:GetNumInPos函数(返回整型,功能:得到一个数中的某个位上的数值) RadixSort函数:(无返回类型,功能:从个位开始,一步步的将数组中的各个元素进行排序、直至最高位)。
3、GetNumInPos函数:首先定义一个变量temp,将temp增大至能使参数被除temp之后特定位数变成个位,然后在对除后的数模10返回。
4、RadixSort函数:首先定义一个二维数组(0号位置保存已放入元素的个数),然后按个位遍历一遍待排序数组,将每个数存放在与其个位数相等的二维数组行下标值对应的那一维向量里面且相应0号位置值加1,然后遍历二维向量,顺序的将值存入待排序数组,然后高一位执行以上操作,直至数组元素中最高位为止。
(注意:定义二维数组时,要将每一维0号位置值赋0)

0 0
原创粉丝点击