常见排序算法:总结

排序算法比较
排序方法 最好时间 平均时间 最坏时间 空间复杂度 稳定性 备注
简单选择排序 O(n^{2}) O(n^{2}) O(n^{2}) O(1) 不稳定 n小时较好
直接插入排序 O(n) O(n^{2}) O(n^{2}) O(1) 稳定 大部分已有序时较好
冒泡排序 O(n) O(n^{2}) O(n^{2}) O(1) 稳定 n小时较好
希尔排序 O(n) O(n\log n) O(n^{s})1<s<2 O(1) 不稳定 s是所选分组
快速排序 O(n\log n) O(n\log n) O(n^{2}) O(\log n) 不稳定 n大时较好
堆排序 O(n\log n) O(n\log n) O(n\log n) O(1) 不稳定 n大时较好
归并排序 O(n\log n) O(n\log n) O(n\log n) O(n) 稳定 n大时较好

 

除了以上排序算法外,还有位图排序,桶排序,基数排序等。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章