排序算法复杂度速查表

Posted Arthurian

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了排序算法复杂度速查表相关的知识,希望对你有一定的参考价值。

 检验一个算法的优劣的很重要一个标准就是其算法复杂度。

各种常用排序算法复杂度表
类别 排序方法 时间复杂度 空间复杂度 稳定性
平均情况 最好情况 最坏情况 辅助存储
插入排序 直接插入 O(n2) O(n)
O(n2) O(1) 稳定
Shell排序 O(n1.3) O(n) O(n2) O(1) 不稳定
选择排序 直接选择 O(n2) O(n2) O(n2) O(1) 不稳定
堆排序 O(nlog2n) O(nlog2n) O(nlog2n) O(1) 不稳定
交换排序 冒泡排序 O(n2) O(n) O(n2) O(1) 稳定
快速排序 O(nlog2n)
O(nlog2n) O(n2) O(nlog2n) 不稳定
归并排序 O(nlog2n)
O(nlog2n) O(nlog2n) O(1) 稳定
基数排序 O(d(r+n))
O(d(n+rd)) O(d(r+n)) O(rd+n) 稳定
注:基数排序的复杂度中,r代表关键字的基数,d代表长度,n代表关键字的个数

 

作者:耑新新,发布于  博客园

转载请注明出处,欢迎邮件交流:zhuanxinxin@aliyun.com

以上是关于排序算法复杂度速查表的主要内容,如果未能解决你的问题,请参考以下文章

程序员算法时间空间复杂度速查表

整理一下,常用算法复杂度速查表

常用算法复杂度速查表,蹲坑的功夫都能背

每个程序员都应该收藏的算法复杂度速查表

数据结构与算法 每个程序员都应该收藏的算法复杂度速查表

常见算法复杂度速查表,速度收藏!