排序总结
跳到导航
跳到搜索
https://www.bilibili.com/video/BV1hg411V7Bm/?p=71
类别 | 排序方法 | 时间复杂度 | 空间复杂度 | 稳定性 | |
---|---|---|---|---|---|
平均情况 | 最坏情况 | 辅助存储 | |||
插入排序 | 直接插入 | O(n2) | O(n2) | O(1) | 稳定 |
Shell排序 | O(n1.25) | ---- | O(1) | 不稳定 | |
选择排序 | 直接选择 | O(n2) | O(n2) | O(1) | 不稳定 |
堆排序 | O(nlog2n) | O(nlog2n) | O(1) | 不稳定 | |
交换排序 | 冒泡排序 | O(n2) | O(n2) | O(1) | 稳定 |
快速排序 | O(nlog2n) | O(n2) | O(nlog2n) | 不稳定 | |
归并排序 | O(nlog2n) | O(nlog2n) | O(n) | 稳定 | |
基数排序 | O(d(r+n)) | O(d(r+n)) | O(r+n) | 稳定 |
考点:排序性能比较
若要求对大小为n的数组进行排序的时间复杂度为O(nlog2n),且是稳定的(即如果待排序的序列中两个数据元素具有相同的值,在排序前后它们的相对位置不变),则可选择的排序方法是()。
A、快速排序
B、归并排序 √
C、堆排序
D、冒泡排序