【数据结构与算法】——基数排序
来源:互联网 发布:买别人的淘宝店铺 编辑:程序博客网 时间:2024/06/04 19:07
基数排序
基本思想:它是一种非比较排序。它是根据位的高低进行排序的,也就是先按个位排序,然后依据十位排序……以此类推。
时间复杂度:
分配需要O(n),收集为O(r),其中r为分配后链表的个数,以r=10为例,则有0~9这样10个链表来将原来的序列分类。而d,也就是位数(如最大的数是1234,位数是4,则d=4),即"分配-收集"的趟数。因此时间复杂度为O(d*(n+r))。
空间复杂度:
O(rd)
稳定性:
基数排序是按照低位先排序,然后收集;再按照高位排序,然后再收集;依次类推,直到最高位。有时候有些属性是有优先级顺序的,先按低优先级排序,再按高优先级排序,最后的次序就是高优先级高的在前,高优先级相同的低优先级高的在前。基数排序基于分别排序,分别收集,所以其是稳定的排序算法。
0 0
- 【数据结构与算法】——基数排序
- 【数据结构与算法】——基数排序
- [数据结构与算法]基数排序
- 【数据结构与算法】基数排序
- 数据结构与算法系列----基数排序
- 数据结构——基数排序
- 数据结构与算法——线性时间排序(计数排序、基数排序、桶排序)
- C源码@数据结构与算法->基数排序
- java数据结构与算法-高级排序-基数排序
- 数据结构-算法: 基数排序
- [数据结构] 基数排序算法
- 数据结构——链式基数排序
- 数据结构例程——基数排序
- 算法与数据结构-常用排序算法总结2-基数排序
- 数据结构与算法(C语言版)__基数排序
- 【继续思考】排序算法——基数排序与桶排序
- 排序算法——基数排序
- 排序算法——基数排序
- 7、PCIE总线-PCI、PCIE关系及信号定义
- ubuntu16.04开wifi
- 【Java学习笔记】——JDK与JRE的区别
- JAVA值传递和引用传递
- 关于JS中比较符==和===的判断不同解释
- 【数据结构与算法】——基数排序
- How can we double the data rate of 802.11a?
- Lightoj 1043
- 8大经典数据挖掘算法
- 十道海量数据处理面试题
- js中json与数组字符串的相互转化
- Two Sum(easy)
- Python删除列表元素不全
- 【数据结构与算法】——归并排序