美文网首页生物信息学与算法
算法与数据结构(2):算法复杂度

算法与数据结构(2):算法复杂度

作者: lxmic | 来源:发表于2018-09-05 08:08 被阅读20次
复杂

9月5日,星期三,公元2018年。

简书作者程序员联盟:目前正在更新这个系列的教程,我是学习记录者,并非原创,此后算法与数据结构系列都是记录笔记,不再进一步说明。个人博客:https://othlis.com/ 同步更新。

这片是关于引出算法复杂度,用了小鸭子的故事。


小鸭子

故事是这样的:

有个农夫,每年带着小鸭子们去旅行,目的是为了让小鸭子们都得到放松清净的机会。旅行就是将他们放到池塘里,而且每个池塘要保证一样多的鸭子,才能够同样的清净,不会有不公平的情况出现。因此,农夫采取的方法是:将小鸭子一只一只的带到池塘边,让他们自己选择要去的池塘,最后在池塘和卡车之见跑了NxN个来回。而第二年,农夫发现不太好,于是就重新换了方法,依次带出N只鸭子,将其放在一个池塘,如此下去,直到每个池塘也是同样多的鸭子,这样只需要N个来回。这样一算,发现第二种方法能够更节省时间更轻松,而且还达到了同样的效果,新的方法胜利。

农夫的放鸭子的方法,就可以看成一种算法,用来对放置鸭子进行了精确的描述。很显然第二种算法更好,时间节省,力气节省,还能达到同样的结果。在计算机术语中,人们用复杂度(complexity)这个词来量化算法的性能。

相关文章

  • 数据结构与算法

    数据结构与算法之美 数据结构与算法之美1--如何学数据结构与算法之美2--复杂度分析(上)数据结构与算法之美3--...

  • 数据结构与算法 - 查找

    数据结构与算法系列文章数据结构与算法 - 时间复杂度数据结构与算法 - 线性表数据结构与算法 - 树形结构数据结构...

  • 数据结构与算法 - 树形结构

    数据结构与算法系列文章数据结构与算法 - 时间复杂度数据结构与算法 - 线性表数据结构与算法 - 树形结构 目录 ...

  • 一位算法工程师的自我修养

    数据结构与算法 基本算法思想动态规划贪心算法回溯算法分治算法枚举算法 算法基础 时间复杂度 空间复杂度 最大复杂度...

  • 数据结构与算法基本概念

    数据结构与算法 本文包括: 算法概念 时间复杂度 大 O 记法 数据结构概念 Python 内置类型的效率 算法的...

  • 数据结构与算法-复杂度分析

    时间、空间复杂度:衡量算法执行小路的指标,数据结构与算法离不开时间、空间复杂度分析,复杂度分析是算法的精髓。 为什...

  • 数据结构与算法之时间复杂度分析

    复杂度分析,是所有数据结构与算法的重中之重,复杂度分析是整个算法学习的精髓,只要掌握了它,可以说数据结构和算法的内...

  • 01 复杂度分析

    1 为什么要学习数据结构 2 算法分析 3 算法复杂度 3.1 大O复杂度 3.2 最好,最坏复杂度 3.3 均摊...

  • 数据结构与算法-C语言4-算法时间和空间复杂度

    数据结构与算法-目录 1.时间复杂度的定义 算法时间复杂度,也就是算法的时间量度。记作:T(n)=O(f(n))。...

  • java面试经典题目二(数据结构与算法)

    数据结构与算法 【1】常见的几大排序及查找算法及其时间复杂度? 答: 1.冒泡算法--O(n2)核心代码如下:(百...

网友评论

    本文标题:算法与数据结构(2):算法复杂度

    本文链接:https://www.haomeiwen.com/subject/uxuowftx.html