排序算法 - 总览

常见排序分类

(1)冒泡排序

(2)选择排序

(3)插入排序

(4)希尔排序

(5)快速排序

(6)归并排序

(7)计数排序

(8)桶排序

(9)基数排序

(10)堆排序

归类

逐个比较:(1)(2)(3)

扫描二维码关注公众号,回复: 9891590 查看本文章

分而治之:(4)(5)(6)

计数方式:(7)(8)(9)

其他:(10)

复杂度

排序法 平均时间 最差情形 稳定度 额外空间 备注
冒泡 O(n2) O(n2) 稳定 O(1) n小时较好
选择 O(n2) O(n2) 不稳定 O(1) n小时较好
插入 O(n2) O(n2) 稳定 O(1) 大部分已排序时较好
基数 O(logRB) O(logRB) 稳定 O(n) B是真数,R是基数
Shell O(nlogn) O(ns) 1<s<2 不稳定 O(1) s是所选分组
快速 O(nlogn) O(n2) 不稳定 O(nlogn) n大时较好
归并 O(nlogn) O(nlogn) 稳定 O(1) n大时较好
O(nlogn) O(nlogn) 不稳定 O(1) n大时较好

猜你喜欢

转载自www.cnblogs.com/yangjunh/p/sort-all.html