当前位置:首页 > 编程笔记 > 正文
已解决

第八章 排序 十、基数排序

来自网友在路上 176876提问 提问时间:2023-10-08 17:11:14阅读次数: 76

最佳答案 问答题库768位专家为你答疑解惑

一、定义

  1. 基数排序(Radix Sort)是一种非比较排序算法,它将待排序元素按照其数值的各位数字(或字母)来排序。
  2. 该算法的基本思想是将整数按照位数切分成不同的数字,然后根据每个位数上的数字进行排序。
  3. 与其他排序算法相比,基数排序的时间复杂度为 O(d*n),其中 d 表示位数,n 表示待排序元素个数。
  4. 在实际应用中,基数排序通常采用桶排序来实现,因此它也被称为桶排序的一种扩展,并且通常被用来对整数排序,而不是字符串等其他类型的数据。

二、例子

1、我们有如下序列,我们要将它进行基数排序

2、把所有数字按个位数分配

3、由于我们要得到一个递减的序列,所以我们以个位进行一次收集

从右到左,从上到下,得到一个以个位数递减的序列

4、基于以个位数递减的序列,我们再以十位进行分配

由于第一次进行的个位数的收集,所以这一次收集是个位数更大的先入队(在同一队中)

5、以十位数进行收集

6、以百位数进行分配

7、以百位数进行收集,得到最终序列

三、算法效率分析

四、稳定性

稳定

五、应用

六、总结

查看全文

99%的人还看了

相似问题

猜你感兴趣

版权申明

本文"第八章 排序 十、基数排序":http://eshow365.cn/6-17370-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!