求解汉诺塔递归式Hn = 2Hn-1 + 1; H0 = 0 ,H1 = 1,H2=3
这是一个一阶常系数非齐次递归式,由于递归式只有一个变元,因此,只需要给出一个已知解H1 = 1。
Hn = 2Hn-1 + 1,H1 = 1,即可求解。
有四种方法来求解(pennyliang)
(1) 直接用母函数法
令母函数G(x) = H0 + H1x+H2x2+H3x3…+Hnxn+…
由
G(x) = H0 + H1x+H2x2+H3x3…+Hnxn+… (1)
2xG(x) = H0 x+ H1x2+H2x3+H3x4…+Hnxn+1+… (2)
(1)-(2)
G(x) – 2xG(x) = H0 + (H1-2H0)x + … (Hn-2Hn-1)xn – Hnxn+1…
若0<x<1,则有
(1-2x)G(x) = x + x2 +…xn = x/(1-x)
G(x) = x/(1-x)(1-2x) = A/(1-x) + B/(1-2x) (3)
由(3)解得A = -1 ,B = 1
G(x) = -(1 + x + x2 + x3+… )+(1 + 2x +22x2+…)
G(x) = (2-1)x + (22-1)x2 + …(2n-1)xn
由此可得,Hn = 2n – 1
(2) 转化为齐次后用母函数法
Hn = 2Hn-1 + 1,(1)
Hn-1 = 2Hn-2 + 1,(2) [由1式可知]
(1)-(2)
Hn-Hn-1 = 2Hn-1 -2Hn-2
Hn = 3Hn-1 -2Hn-2 (3) //转化为常系数齐次递归式
按照第一种方法可以求得
G(x)-3xG(x)+2x2G(x) = H0 + H1x -3H0x2 = x
G(x) = x/(1-x)(1-2x)
后续方法同(1)
(3) 齐次方程的特征方程法
由方法2可知Hn = 3Hn-1 -2Hn-2
特征方程为x2 = 3x – 2
解得a = 1 b = 2
通解Hn = A(1)n + B(2)n,将H0 = 0;H1 = 1代入,可得A = -1,B=2,即Hn = 2n-1
(4) 非齐次方程的特征方程法
Hn = 2Hn-2 - 1
特征方程为x = 2
-1,可以看作是-1*1n, 1不是特征方程的解(1≠2)。
因此有Hn = A2n + B(1)n,A2n为通解,B(1)n为特解
将H0 = 0;H1 = 1代入,可得Hn = 2n-1