排序方法 | 最好时间 | 最坏时间 | 平均时间 | 辅助空间 | 稳定性 |
直接插入 | O(n) | O(n2) | O(n2) | O(1) | 稳定 |
简单选择 | O(n2) | O(n2) | O(n2) | O(1) | 不稳定 |
冒泡排序 | O(n) | O(n2) | O(n2) | O(1) | 稳定 |
希尔排序 | ---- | ---- | O(n1.25) | O(1) | 不稳定 |
快速排序 | O(nlog2n) | O(n2) | O(nlog2n) | O(log2n) (辅助栈) | 不稳定 |
堆排序 | O(nlog2n) | O(nlog2n) | O(nlog2n) | O(1) | 不稳定 |
归并排序 | O(nlog2n) | O(nlog2n) | O(nlog2n) | O(n) | 稳定 |
基数排序 | O(d*n) | O(d*n) | O(d*n) | O(n*d) | 稳定 |
1. Insertion sort direct insertion sort shell sort | 2. Exchange sort bubble sort quick sort | 3. Select sort simple select sort heap sort | 4. Merge sort | 5. Radix sort |