各种排序算法比较及时间复杂度,空间复杂度

转载 2016年08月31日 13:12:37

搜集基本常用算法的时间/空间复杂度


空间复杂度
冒泡排序,简单选择排序,堆排序,直接插入排序,希尔排序的空间复杂度为O(1),因为需要一个临时变量来交换元素位置,(另外遍历序列时自然少不了用一个变量来做索引)

快速排序空间复杂度为logn(因为递归调用了) ,归并排序空间复杂是O(n),需要一个大小为n的临时数组.

基数排序的空间复杂是O(n),桶排序的空间复杂度不确定


最快的排序算法是桶排序
所有排序算法中最快的应该是桶排序(很多人误以为是快速排序,实际上不是.不过实际应用中快速排序用的多)但桶排序一般用的不多,因为有几个比较大的缺陷.

1.待排序的元素不能是负数,小数.

2.空间复杂度不确定,要看待排序元素中最大值是多少.

所需要的辅助数组大小即为最大元素的值.



参考:

http://blog.csdn.net/weiwenhp/article/details/8622728



相关文章推荐

各种排序算法比较:时间复杂度,空间复杂度

时间复杂度 n^2表示n的平方,选择排序有时叫做直接选择排序或简单选择排序 排序方法 平均时间 最好时间 最坏时间 桶排序(不稳定) O(n) O(n)...

排序算法总结之冒泡排序

冒泡排序(Bubble Sort,台湾译为:泡沫排序或气泡排序)是一种简单的排序算法。它的基本思想就是两两比较相邻记录的关键字,如果反序则交换,直到没有反序的记录为止。它重复地走访过要排序的数列,一次...
  • bruce_6
  • bruce_6
  • 2014年08月21日 13:24
  • 1413

各排序算法时间复杂度的比较

  • 2014年12月15日 19:15
  • 172KB
  • 下载

排序算法时间复杂度和空间复杂度比较

时间复杂度 n^2表示n的平方,选择排序有时叫做直接选择排序或简单选择排序 排序方法 平均时间 最好时间 最坏时间 桶排序(不稳定) O(n) O(n) O(n) 基数排序(稳定) O(n) O(n)...

各种排序算法比较(2):时间复杂度,空间复杂度

时间复杂度 n^2表示n的平方,选择排序有时叫做直接选择排序或简单选择排序 排序方法 平均时间 最好时间 最坏时间 桶排序(不稳定) O(n) O(n)...

各种排序算法比较(2):时间复杂度,空间复杂度

时间复杂度 n^2表示n的平方,选择排序有时叫做直接选择排序或简单选择排序 排序方法 平均时间 最好时间 最坏时间 桶排序(不稳定) O(n) O(n) O(...
  • weiwenhp
  • weiwenhp
  • 2013年02月28日 17:33
  • 19520
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:各种排序算法比较及时间复杂度,空间复杂度
举报原因:
原因补充:

(最多只允许输入30个字)