排序总结

来自姬鸿昌的知识库
跳到导航 跳到搜索

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、冒泡排序