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))

    本文由作者原创,如需转载注明出处!
  • 相关阅读:
    主要几种通信协议的性能比较(转载)
    mina与spring集成(翻译)
    DF标志和串传送指令
    编写不会产生除法溢出的子程序
    转: 匈牙利标记法
    转:四种方式实现从尾到头输出单向链表(链表逆序打印)
    汇编语言注释标记符
    汇编将数据以十进制格式显示在屏幕上
    转:汇编寄存器的使用
    蒙特卡罗算法 求数组主元素
  • 原文地址:https://www.cnblogs.com/Fsiswo/p/9276868.html
Copyright © 2011-2022 走看看