插入排序
希尔排序(Shell)
选择排序
堆排序
冒泡排序
快速排序
归并排序和基数排序(桶排)
的 时间复杂度(平均情况、平均情况和最坏情况)和 空间复杂度。
排序方法 名称 |
是否需要 比较关键字 |
时间复杂度 平均情况 |
时间复杂度 平均情况 |
时间复杂度 最坏情况 |
空间复杂度 |
插入排序 | 是 | O(n²) | O(n) | O(n²) | O(1) |
希尔排序 (Shell) |
是 | O(n的1.3次方) |
O(n) | O(n²) | O(1) |
选择排序 | 是 | O(n²) | O(n²) | O(n²) | O(1) |
堆排序 | 是 | O(nlogn) | O(nlogn) | O(nlogn) | O(1) |
冒泡排序 | 是 | O(n²) | O(n) | O(n²) | O(1) |
快速排序 | 是 | O(nlogn) | O(nlogn) | O(n²) | O(nlogn) |
归并排序 | 是 | O(nlogn) | O(nlogn) | O(nlogn) | O(n) |
基数排序 (桶排) |
否 | O(d(n+r)) | O(d(n+rd)) | O(d(n+r)) | O(d(n+rd)) |
希尔排序(Shell)也是一种插入形式的排序;
堆排序也是一种选择排序;
冒泡排序和快速排序都是交换排序。