zoukankan      html  css  js  c++  java
  • 0-绪论

    算法和算法分析

    1、算法设计的要求:

    1、 正确性(无歧义)

    2、 可读性(算法主要为了人与人交流,晦涩难懂的程序易于隐藏错误,难调试和修改)

    3、 健壮性(当输出非法数据、处理方法应当是返回一个表示错误或错误性质的值,而不是打印错误信息或异常,并中止程序的运行,以便在更高的抽象层次上进行处理)

    4、 效率与低存储需求(效率 = 算法执行时间,存储量需求 = 算法执行过程中所需要的最大存储空间)

    2、算法效率的度量

                    1、事前进行一定的分析

                    1、依据算法选用何种策略

                    2、问题的规模

                    3、书写程序的语言,对于同一算法,实现语言的级别越高,执行效率越低

                    4、编译程序所产生的机器代码的质量

                    5、机器执行指令的速度

    一般情况下,算法中基本操作重复执行的次数时问题规模n的某个函数  f(n,算法的时间量度记作

    T(n) =  O (fn))

    它表示随问题规模n的增大,算法执行时间的增长率和 f(n的增长率相同,称做算法的

    渐近时间复杂度,简称时间复杂度。

    语句的频度指的是该语句重复执行的次数。

    类似算法的时间复杂度,空间复杂度作为算法所需存储空间的量度,记作

    S(n) =  O (fn))

    本文由作者原创,如需转载注明出处!
  • 相关阅读:
    关于Maven项目的pom.xml中的依赖或插件失效的解决方法
    java引用数据类型在方法中的值传递
    java匹配http或https的url的正则表达式20180912
    java正则表达式的进阶使用20180912
    java线程池 多线程 搜索包含关键字的文件路径
    魔术球问题
    [SDOI2009]晨跑
    [洛谷P2045]方格取数加强版
    最小路径覆盖问题
    最长不下降子序列问题
  • 原文地址:https://www.cnblogs.com/Fsiswo/p/9276868.html
Copyright © 2011-2022 走看看