排序算法比较

来源:互联网 发布:java就业信息管理系统 编辑:程序博客网 时间:2024/06/14 13:01

冒泡排序:

         时间复杂度O(n^2)

 

统计排序:

         时间复杂度 O(n)+O(Max)

 

快速排序:

         时间复杂度 O(nlogn),最坏情况时间复杂度为O(n^2)

 

堆排序:

         构建堆的时间复杂度为O(n)

         堆排序的时间复杂度为O(nlogn)

         总时间复杂度O(nlogn)

 

归并排序:

         过程:先类似二叉树方式对数组进行层级划分。

                          然后进行层级的数组归并

         时间复杂度为O(nlogn)

         空间复杂度需要额外开辟O(n)空间。

 

         存在优化后的原地归并排序算法,不需要开辟额外空间,即额外空间复杂度O(1),时间复杂度仍然为O(nlogn)    http://blog.sina.com.cn/s/blog_53c1950a0101c09r.html

 

0 0
原创粉丝点击