- 27
- 0
- 约1.98万字
- 约 81页
- 2017-01-02 发布于浙江
- 举报
例2 汉诺塔(Hanoi)问题 有三根立柱A、B、C以及n个大小不同的圆盘套在立柱A上,大的圆盘在下面,小的圆盘在上面,构成一个塔形。现在要把这n个圆盘移到立柱B上。可以利用这三根立柱,每次只能移动一个圆盘,但不允许将它放在较小的圆盘上,问最少需移动多少次? 解 令Hn为完成这样的一次移动至少必须移动圆盘的次数。 为了把n个圆盘从立柱A移到立柱B,可先将n-1个圆盘从立柱A移到立柱C,留下最大的圆盘,移动的次数为Hn-1;然后再将最大的圆盘移动到立柱B,移动1次;最后将n-1个圆盘从立柱C移到立柱B,移动次数为Hn-1。 于是有Hn=2Hn-1+1,n≥2,其中H1=1。 以上的例子有一个共同的特点,即从我们在计数问题所得出的数列中,它的一般项可用它自身数列中的前面若干项来表达。这样,从给定的初始值出发,利用所建立的关系式可以依次算出数列中的每一项。我们称这些关系式为递推关系。下面我们介绍递推关系的几种解法。 1.递推关系的生成函数解法 设{a0,a1,…,an,…}为一个无穷数列,我们称f(t)=a0+a1t+…+antn+…为该数列的生成函数。 例3 数列{1,1,…,1,…}的生成函数为 =1+t+…+tn+…。 将递推关系代入数列的生成函数的系数中去,通过计算可以得到生成函数的显式,然后再将它展开成幂级数就可求得数列的通项。 例4 斐波那契数列问题 解 设F
原创力文档

文档评论(0)