排序总结-时间复杂度和空间复杂度

原创 2016年08月31日 16:01:13

排序(Sorting)问题是我们再业务开发中遇到的最基本问题,因此成为各大IT公司招聘笔试面试必考内容之一。笔者也借着校园招聘对数据结构这一章节的复习对排序问题进行一个简单的总结,然后基于Java进行实现。

排序分类

  • 排序

    • 插入排序

      • 直接插入排序
      • 折半插入排序
      • 表插入排序
      • 希尔排序
    • 交换排序

      • 冒泡排序
      • 快速排序
    • 选择排序

      • 直接选择排序
      • 堆排序
      • 归并排序

排序时间复杂度和空间复杂度

类别 平均时间 最坏时间 辅助空间
直接插入排序
O(n2)
O(n2)
O(1)
直接选择
O(n2)
O(n2)
O(1)
快速排序
O(nlog2n)
O(n2)
O(log2n)
堆排序
O(log2n)
O(log2n)
O(1)
归并排序
O(nlog2n)
O(nlog2n)
O(n)
版权声明:本文为博主原创文章,未经博主允许不得转载。

各种排序算法的java实现及时间、空间复杂度、稳定程度总结

最近闲着没事,就随便看了看数据结构,看到各种排序算法时,突然心血来潮,就想,以前都是用C++实现的,能不能用java实现所有的排序算法呢?而且顺便练习一下递归的使用(因为我最不擅长使用的就是递归) ...
  • nkliming
  • nkliming
  • 2012年06月16日 11:29
  • 6963

数据结构几种排序算法的时间和空间复杂度总结

转自:http://blog.wangbaiyuan.cn/486.html 1.插入排序:每次将一个待排的记录插入到前面的已经排好的队列中的适当位置。 ①.直接插入排序 直接排序法在最好情况下...
  • u014729825
  • u014729825
  • 2015年01月04日 17:23
  • 852

各种排序算法的时间和空间复杂度

排序法 平均时间 最差情形 稳定度 额外空间 备注 冒泡 O(n2) O(n2) 稳定 O(1) n小时较好 交...
  • Fly_TheWind
  • Fly_TheWind
  • 2016年06月02日 13:11
  • 692

算法的时间复杂度和空间复杂度-总结

通常,对于一个给定的算法,我们要做 两项分析。第一是从数学上证明算法的正确性,这一步主要用到形式化证明的方法及相关推理模式,如循环不变式、数学归纳法等。而在证明算法是正确的基础上,第二部就是分析算法的...
  • shanshanhi
  • shanshanhi
  • 2017年02月16日 18:20
  • 497

算法的时间复杂度和空间复杂度-总结

通常,对于一个给定的算法,我们要做 两项分析。第一是从数学上证明算法的正确性,这一步主要用到形式化证明的方法及相关推理模式,如循环不变式、数学归纳法等。而在证明算法是正确的基础上,第二部就是分析算法的...
  • lulubaby_
  • lulubaby_
  • 2017年12月06日 19:24
  • 79

算法的时间复杂度和空间复杂度-总结

算法的时间复杂度和空间复杂度-总结         通常,对于一个给定的算法,我们要做 两项分析。第一是从数学上证明算法的正确性,这一步主要用到形式化证明的方法及相关推理模式,如循环不变式、数学...
  • XiaoXiaoPengBo
  • XiaoXiaoPengBo
  • 2016年06月04日 11:04
  • 23629

数据结构时间空间复杂度计算

常见时间复杂度还有:nlogn阶,立方阶,指数阶O(2^n)等 耗费时间:O(1) 最坏情况与平均情况:  平均运行时间是期望的运行时间。  最坏运行时间是一种保证,在应用中,这是一种最重...
  • qq_32863631
  • qq_32863631
  • 2017年09月18日 22:54
  • 205

数据结构 算法时间、空间复杂度

· 算法时间复杂度
  • zesicus
  • zesicus
  • 2014年07月23日 09:51
  • 299

【数据结构】排序算法时间效率、空间效率以及算法稳定性总结

排序算法   排序是将一组无序的记录序列调整为有序的记录序列的操作,可以方便查找。大部分的排序算法都有两个基本的操作:(1)比较两个关键字的大小.(2)将记录从一个位置移动到另一个位置。 排序...
  • haha_point
  • haha_point
  • 2018年01月04日 16:05
  • 36

常见排序算法及对应的时间复杂度和空间复杂度

排序算法经过了很长时间的演变,产生了很多种不同的方法。对于初学者来说,对它们进行整理便于理解记忆显得很重要。每种算法都有它特定的使用场合,很难通用。因此,我们很有必要对所有常见的排序算法进行归纳。...
  • Gane_Cheng
  • Gane_Cheng
  • 2016年09月25日 00:14
  • 15738
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:排序总结-时间复杂度和空间复杂度
举报原因:
原因补充:

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