• 算法分析基础


    【算法分析的定义】

    算法分析是对一个算法需要多少计算时间和存储空间作定量的分析。

    【表示时间复杂度的符号】

    (1)Θ(西塔):紧确界。            相当于"="

    (2)O (大欧):上界。              相当于"<="

    (3)o(小欧):非紧的上界。       相当于"<"

    (4)Ω(大欧米伽):下界。          相当于">="

    (5)ω(小欧米伽):非紧的下界。 相当于">"

    【主方法求解递归】

    主方法为如下形式的递归提供了一种“菜谱”式的求解方法
      T(n) = aT(n/b) + f(n)
    其中a≥1和b>1是常数,f(n)是渐近函数。
    上述递归式描述的是这样一种算法的运行时间:
    它将规模为n的问题分解为a个子问题,每个子问题规模为n/b,其中a和b都是正常数。
    a个子问题递归地进行求解,每个花费时间T(n/b)。
    函数f(n)包含了问题分解和子问题解合并的代价。
    其中n/b指n/b的上取整或者是下取整,对结果不会造成影响。

    【主定理】

    【反例】

    例:  T(n) = 2T(n/2) + nlgn

  • 相关阅读:
    java基础测试
    java随笔
    Android 开机广播的使用
    ZOJ 3715 Kindergarten Election
    LightOJ 1051
    LightOJ 1042
    LightOJ 1049
    LightOJ 1048
    LeightOJ 1046
    LightOJ 1045
  • 原文地址:https://www.cnblogs.com/wxgblog/p/suanfafenxijichu.html
Copyright © 2020-2023  润新知