表8-1 排序方法的性能比较
|
排序方法 |
最好时间 |
平均时间 |
最坏时间 |
辅助时间 |
稳定性 |
|
直接插入 |
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(n log2n) |
O(n log2n) |
O(n2) |
O(n log2n) |
不稳定 |
|
堆排序 |
O(n log2n |
O(n log2n) |
O(n log2n) |
O(1) |
不稳定 |
|
归并排序 |
O(n log2n |
O(n log2n) |
O(n log2n) |
O(n) |
稳定 |
|
基数排序 |
O(d(n+rd)) |
O(d(n+rd)) |
O(d(n+rd)) |
O(rd) |
稳定 |
|