1.迭代法
-
步骤
- 不断将递推方程的右部替代左部
- 直到出现初值
- 将初值带入,进行化简
- 用数学归纳法进行验证
- 备注:迭代法也可以进行换元后进行如例三
-
例子
- 汉诺塔问题
- T(n)=2T(n-1)+1
- T(1)=1
-
T(n) = 2 T(n-1) + 1
= 2[2T(n-2) + 1] + 1
= 2^2 T(n-2) + 2 + 1
......
= 2^(n-1)T(1) + 2^(n-2)+2^(n-3)+...+2+1
=2^(n-1) + 2^(n-1)-1= 2^n-1
T(1)=1, 2^(n-2)+2^(n-3)+...+2+1等比数列
- 数学归纳法验证:
- 第一步:n=1:T(0)=0,T(1)=1
- 第二步:假设n时,T(n)=2^n-1成立
- 第三步:带入n+1
-
T(n+1)=2T(n)+1
=(2^n-1)*2+1
=2^(n+1)-2+1
=2^(n+1)-1
- 汉诺塔问题

文章通过迭代法探讨了汉诺塔问题、插入排序和二分排序的时间复杂度,利用递推方程和数学归纳法进行证明,得出T(n)=2^n-1、W(n)=m(n-1)/2和W(n)=nlogn-n+1的结论。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



