排序算法是稳定的意思是关键字相同的记录排序前后的相对位置不发生改变,对于下列排序算法:
1)插入排序 2)基数排序 3)归并排序 4)冒泡排序 5)堆排序
包含所有稳定算法的选项为:
排序法 | 平均时间 | 最差情形 | 稳定度 | 额外空间 |
冒泡 | O(n2) | O(n2) | 稳定 | O(1) |
交换 | O(n2) | O(n2) | 不稳定 | O(1) |
选择 | O(n2) | O(n2) | 不稳定 | O(1) |
插入 | O(n2) | O(n2) | 稳定 | O(1) |
基数 | O(logRB) | O(logRB) | 稳定 | O(n) |
Shell | O(nlogn) | O(ns) 1<s<2 | 不稳定 | O(1) |
快速 | O(nlogn) | O(n2) | 不稳定 | O(nlogn) |
归并 | O(nlogn) | O(nlogn) | 稳定 | O(1) |
堆 | O(nlogn) | O(nlogn) | 不稳定 | O(1) |
排序法 | 平均时间 | 最差情形 | 稳定度 | 额外空间 |
冒泡 | O(n2) | O(n2) | 稳定 | O(1) |
交换 | O(n2) | O(n2) | 不稳定 | O(1) |
选择 | O(n2) | O(n2) | 不稳定 | O(1) |
插入 | O(n2) | O(n2) | 稳定 | O(1) |
基数 | O(logRB) | O(logRB) | 稳定 | O(n) |
Shell | O(nlogn) | O(ns) 1<s<2 | 不稳定 | O(1) |
快速 | O(nlogn) | O(n2) | 不稳定 | O(logn) |
归并 | O(nlogn) | O(nlogn) | 稳定 | O(n) |
堆 | O(nlogn) | O(nlogn) | 不稳定 | O(1) |