用生成函数求解汉诺塔问题的递归方程

递推公式

\[F(n)=\begin{cases} 0&(n=0)& \\ 1&(n=1)& \\ 2F(n-1)+1 &(n>1)& \end{cases} \]

构造生成函数求解

\[\begin{array}{lcl} G(x)=1 \cdot x^1+3\cdot x^2+7\cdot x^3+15\cdot x^4 +\cdots\\\\ 2x\cdot G(x)=\qquad 2\cdot x^2+6\cdot x^3 +14 \cdot x^4\;+\cdots\\\\ G(x)-2x\cdot G(x)=x^1+x^2+x^3+x^4+\cdots\\\\ (1-2x)G(x)=\frac{1}{1-x}-1 \\\\ (1-2x)G(x)=\frac{x}{1-x} \\\\ G(x)=\frac{x}{(1-2x)(1-x)}=\frac{1}{1-2x}-\frac{1}{1-x}\\\\\\ \qquad\;\;=(1+2x+2^2x^2+2^3x^3+\cdots+2^nx^n)-(1+x^1+x^2+\cdots+x^n)\\\\ \qquad\;\;=(2^1-1)x+(2^2-1)x^2+\cdots(2^n-1)x^n\\\\ \Rightarrow F(n)=2^n-1 \end{array} \]

posted @ 2020-10-07 11:17  lvjiuluan  阅读(919)  评论(0编辑  收藏  举报