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

原创 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)
版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

时间复杂度、空间复杂度

时间复杂度、空间复杂度 算法复杂度分为时间复杂度和空间复杂度。其作用:时间复杂度是指执行算法所需要的计算工作量;而空间复杂度是指执行这个算法所需要的内存空间。 一、时间复杂度 时...

时间复杂度和空间复杂度

转自:http://blog.csdn.net/qiantujava/article/details/12898461 时间复杂度 时间复杂度简单的理解就是执行语句...

精选:深入理解 Docker 内部原理及网络配置

网络绝对是任何系统的核心,对于容器而言也是如此。Docker 作为目前最火的轻量级容器技术,有很多令人称道的功能,如 Docker 的镜像管理。然而,Docker的网络一直以来都比较薄弱,所以我们有必要深入了解Docker的网络知识,以满足更高的网络需求。

算法复杂度——时间复杂度和空间复杂度

算法复杂度——时间复杂度和空间复杂度 关键字: 算法复杂度 时间复杂度 空间复杂度 1、时间复杂度   (1)时间频度 一个算法执行所耗费的时间,从理论上是不能...

算法复杂度——时间复杂度和空间复杂度

1、时间复杂度   (1)时间频度 一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道。但我们不可能也没有必要对每个算法都上机测试,只需知道哪个算法花费的时间多,哪个算法花...

算法复杂度——时间复杂度和空间复杂度

1、时间复杂度    (1)时间频度 一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道。但我们不可能也没有必要对每个算法都上机测试,只需知道哪个算法花费的时间多,哪个算法花...

空间换时间小例子(2)

空间换时间

时间复杂度和空间复杂度详解

没有挤公交来上班过,就不知道生活的压力有多大。 算法的时间复杂度和空间复杂度合称为算法的复杂度。 1.时间复杂度 (1)时间频度 一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试...

时间复杂度和空间复杂度详解

算法的时间复杂度和空间复杂度合称为算法的复杂度。 1.时间复杂度 (1)时间频度 一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道。但我们不可能也没有必要对每个算法都上机...

时间复杂度和空间复杂度详解

算法的复杂度分为时间复杂度和空间复杂度 1、时间复杂度         表示为总的执行次数T(n)是关于问题规模n的函数,也就是T(n)随着n的变化,用一个函数表示为:        &...

时间复杂度&空间复杂度

1、时间复杂度 (1)时间频度 一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道。但我们不可能也没有必要对每个算法都上机测试,只需知道哪个算法花费的时间多,哪个算...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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