zoukankan      html  css  js  c++  java
  • 算法篇——常见时间复杂度

    1、算法定义

    算法是解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且每条指令表示一个或者多个操作。最早出现在波斯数学家阿勒·花刺子密在公元825年所写的《印度数字算术》中。

    2、算法特性

    输入输出,又穷性,确定性和可行性

    2.1、输入输出

    算法具有零个或者多个输入,但至少有一个输出。输出形式可以多样

    2.2、有穷性

    指算法在执行有限步骤后,自动结束而不会出现无限循环情况,并且每一个步骤在可接受的时间内完成。 这里的有穷概念并不是存数学意义,而是在实际应用当中合理的,可以接受的。比如写个算法需要运行二十年才结束,这个就没有意义了。

    2.3、确定性

    算法的每一步都具有确定的含义,不会出现其他含义。就是在一定的条件下只有一条执行路径,相同的输入只能有唯一的输出结果。

    2.4、可行性

    算法每一步必须可行。意味着算法可以转化为程序运行,并得到正确结果。

    3、常见的时间复杂度

    常用时间复杂度的耗费时间从小到大依次是: 

    ps:《大话数据结构》读书笔记

  • 相关阅读:
    关系数据模型和对象数据模型之间的对应关系
    object中的方法
    重写与重载
    java中的多态总结
    int是java.lang包中可用的类的名称
    abstract关键字的说法
    7迭代器
    6python *args **kwargs
    1特征工程
    1html
  • 原文地址:https://www.cnblogs.com/freeton/p/13858496.html
Copyright © 2011-2022 走看看