算法 渐近符号,递归和解法
本书是基于渐近符号,递归及其解法第二节课的总结。主要分析了三种渐近符号看,以及三种解递归的方法
渐近符号
Ω ( n 2 ) \Omega(n^2) Ω(n2)表示当n足够大的时候,运行时间一定小于 n 2 n^2 n2,是下界
O ( n 2 ) \Omicron(n^2) O(n2)表示小于当n足够大的时候,运行时间一定小于 n 2 n^2 n2,是上界
Θ ( n 2 ) \Theta(n^2) Θ(n2)表示一种紧约束,运行时间与 n 2 n^2 n2成正比,当且仅当 f ( n ) = O ( n 2 ) a n d f ( n ) = Ω ( n 2 ) f(n) = \Omicron(n^2) and f(n) = \Omega(n^2) f(n)=O(n2)andf(n)=Ω(n2)
还有 ο \omicron ο 表示小于, ω \omega ω表示大于
递归的三种解法
其中代换法很蠢,我们基本用不到,当我们分析的时候主要使用递归树和主方法,主方法还可以倒推来设计算法
代换法
有这样一个递归的式子: T ( n ) = 4 T ( n 2 ) + n T(n) = 4T(\frac{n}{2})+n T(n