您的位置:首页 > 其它

麻省理工《算法导论》学习笔记(二)渐近符号,递归及解法

2013-02-17 15:57 295 查看
2012-03-28 22:51

麻省理工《算法导论》学习笔记(二)渐近符号,递归及解法

今天,来学习一下程序中的渐近符号,递归及分析。

一、渐近符号:

1.

,表示f(n)的复杂度最多与g(n)一个数量级,即小于等于。

2.

,表示f(n)的复杂度要比g(n)的数量级小,即小于。

3.

,表示f(n)的复杂度最少与g(n)一个数量级,即大于等于。

4.

,表示f(n)的复杂度要比g(n)的数量级大,即大于。

5.

,表示f(n)的复杂度既大于等于g(n)的复杂度,又小于等于g(n)的复杂度,即于g(n)的复杂度相当。

二、分析一个算法的复杂度:

1.利用递归树的方法:

画出递归树,然后计算叶子节点的和。一般最后计算和的式子都是等比级数的形式,所以会非常好算。

例如:T(n) = 2T(n/2) + n2的递归树如下:



2.主定理方法:

懒得自己画一个图了,找了一个人的博客的图:

主定理有三种情况,不同的情况有不同的用法:



利用主定理可以很方便地分析一些算法的复杂度。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: