递归问题

第一章递归问题

1.1 河内塔

n个圆盘移动从一个柱子借助一个柱子,移动到另一个柱子上的次数为 :

递推式:T(n)=2*T(n-1)+1 , n>0,T(0)=0

归纳法得出:T(n)=pow(2,n)-1 n>=0

寻求封闭形式的表达式三个阶段:

1)研究小的情形。

2)对有意义的量求出数学表达式并给出证明。

3)对数学表达式求出封闭形式并予以证明。


1.2 平面上的直线

n(直线)最多能把平面分为:

递推式:L(n)=L(n-1)+n , n>0 ,L(0)=1

对递推式展开或解开,如下:

L(n)=L(n-1)+n

=L(n-2)+(n-1)+n

=….

=L(0)+1+2+...+(n-1)+n

=1+n*(n+1)/2, n>=0

S(n)=1+2+...+n,S(n) 可以用S(n)和它的反向书写相加

n刀(呈锯齿形)最多能把平面分为:

Z(n)=L(2*n)-2*n=2*n*n-n+1, n>=0


1.3 约瑟夫问题

n个人形成圈,每隔一个人出列,问最后一个人的序列?

(1)若刚开始序列中有偶数(2*n)个人,经过一轮后,序列为:1,3,5….2*n-1, 既可以看作是n 个人的情况,序列号加倍减一, 即J(2*n)=2*J(n)-1 , n>=1

(2)若刚开始序列中有奇数(2*n+1)个人,经过一轮后,序列为:3,5,7,...2*n+1 ,看作n个人的情况,序列号加倍加一 ,J(2*n+1)=2*J(n)+1 , n>=1

递推式:

J(1)=1;

J(2*n)=2*J(n)-1 , n>=1

J(2*n+1)=2*J(n)+1 , n>=1

通过递推式打出表格:

n

1

2 3

4 5 6 7

8 9 10 11 12 13 14 15

J(n)

1

1 3

1 3 5 7

1 3 5  7 9  11 13 15

猜想 J(pow(2,m)+l)=2*l+1 , m>=0 ,0<=l<pow(2,m) 通过数学归纳法证明该猜想

 

待续。。。。。。。

原文地址:https://www.cnblogs.com/lemon-jade/p/8480820.html