• java算法:算法分析


    java算法:算法分析

    因为要比较完成同一个任务的不同算法,预测算法在新环境中的性能,所以需要对算法进行数学分析。

    虽然实验分析对其中一些任务可能已经满足了,但是数学分析会给我们提供更多的信息。

    算法分析具有挑战性。通过仔细研究程序,找到数学量表达的运行时间,并对这些数学量进行数学分析,得出数学公式,再进行比较。

    虽然有很多因素影响着算法的运行时间,但是精确地预测某个算法的运行时间也是有可能的。

    算法分析的任务就是尽可能多的发现有关算法性能的特性;而Coder的任务就是利用这些信息为特定的运用选择算法。

    算法分析就是找出算法基于哪些基本的对象操作,以便把分析与现实分开,同时还需要研究数据并把算法可能输入的模型化。

    算法分析的重要数学工具:函数,大O表示法:

    logN:程序运行时间是对数级别,N增大,运行时间增长的稍慢。直到N=N2,运行时间才翻倍。

    NlogN:把一个问题分成若干个子问题,分别解决这些子问题,再把这些解合并起来。

    N:程序运行的时间为线性。随N增大而增大。

    N2,y=N3:算法的运行时间是平方次,算法只对相当小的问题有价值。

    2n:很少具有指数运行时间的算法适合于实际运用。

    大O表示法在此省略。

  • 相关阅读:
    远程线程注入与CreateRemoteThread
    游戏修改器编写原理
    软件保护技术常见保护技巧
    反跟踪技术
    C++用static声明的函数和变量小结
    PE文件格式分析及修改
    MMX指令集在C++中的使用
    HOOKAPI之修改IAT法则
    如何获取 程序加载后的内存起始地址
    Java线程中断的本质和编程原则
  • 原文地址:https://www.cnblogs.com/wuyida/p/6301161.html
Copyright © 2020-2023  润新知