第一章 算法分析的数学基础
本章内容:
1、复杂性函数的阶
2、和的估计与界限
3、递归方程
复杂性函数的阶,n是输入的规模
T(n)=O(f(n)), f(n)是渐近意义上的上界。
T(n)=Ω(f(n)),f(n)是渐近意义上的下界。
T(n)=θ(f(n)),f(n)是渐近意义上的上界和下界。、
Merge-sort排序算法的复杂性方程:
一层一层写下去直到kO(n)+2^kT(1),事后补图
另外还有一个master定理,专业论述最后提一下,先说一下简易的判断方法:
形如:T(n)=a T(n/b)+f(n) 要求a>=1,b>1是常数,f(n)是正函数
若nlogb a与f(n)的阶比较,谁大就是谁。若相等则等于f(n)logn
标准定义如下:
图示如下:
来三个例题:
第一题:
a=7 b=7 nlogb a=nlog7 7=n =f(n)所以时间复杂度为O(nlogn)
第二题
a=8 b=6 f(n)=n^1.5 logn n^1.5 logn >nlog 6 8所以 O(n^1.5 logn)
第三题
T(n)=2T(n^1/3)+1
T(2^m)=2T(2^(m/3))+1
设S(m)=T(2^m)
所以 S(m/3)=T(2^(m/3))
所以 S(m)=2S(m/3)+1
mlog3 2>1所以
θ(mlog3 2)=θ(log2 n log 3 2)