算法分析
时间复杂度
n:输入规模 T(n):算法的时间复杂度 最佳情况
一般不进行算法在最佳情况下的分析
最坏情况
通常与平均情况下的时间复度一致
平均情况
T(n)=i=1∑mpiti 输入分为m类 第i类输入发生的概率pi 第i类输入执行的时间ti 渐进记号
只关心算法运行时间如何随输入规模的无限增长而增长
O
g(n),O(g(n))={f(n):∃c,n0→∀n≥n,0≤f(n)≤cg(n)} 给出算法运行时间的渐进上界
Ω
g(n),Ω(g(n))={f(n):∃c,n0→∀n≥n0,0≤cg(n)≤f(n)} 给出渐进下界
Θ
g(n),Θ(g(n))={f(n):∃c1,c2,n0→∀n≥n0,0≤c1g(n)≤f(n)≤c2g(n)} 给出渐进紧致界