各类排序的复杂度

排序时间复杂度:
最好 平均 最坏
插入排序 O(n)(彻底有序) O(n^2) O(n^2)(彻底逆序)
希尔排序 O(n) O(n^1.3-1.4) O(n^2)
直接选择排序 O(n^2)数据不敏感
堆排序 O(nlog(n))数据不敏感
冒泡排序 O(n) O(n^2) O(n^2)
快速排序 O(n
log(n)) O(nlog(n)) O(n^2)
归并排序 O(n
log(n))数据不敏感
空间复杂度:
插入排序:O(1)
希尔排序:O(1)
直接选择排序:O(1)
堆排序:O(1)
冒泡排序:O(1)
快速排序:最好:O(log(n))
最坏:O(n)
归并排序:O(n)
稳定性:
插入排序:稳定
希尔排序:不稳定(相等的两个数被分到不一样的组里,没法保证)
直接选择排序:不稳定
堆排序:不稳定
冒泡排序:稳定
快速排序:不稳定
冒泡排序:稳定
归并排序:稳定ide

相关文章
相关标签/搜索