(1)冒泡排序
(2)选择排序
(3)插入排序
(4)希尔排序
(5)快速排序
(6)归并排序
(7)计数排序
(8)桶排序
(9)基数排序
(10)堆排序
逐个比较:(1)(2)(3)
分而治之:(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大时较好 |
原文:https://www.cnblogs.com/yangjunh/p/sort-all.html