1. 程式人生 > >[轉載]遞推公式的特征方程及通項公式

[轉載]遞推公式的特征方程及通項公式

編程 bsp family str csdn ans idt mic 方程

先貼上鏈接:http://blog.csdn.net/happykocola/article/details/73933314

因為最近在復習初賽,然後碰到了這道題,並不會做,才發現有這麽高明的方法...

已知遞推關系式:
f(n)=5f(n-1)-6f(n-2) (n>1)
f(0)=1
f(1)=0
則f(n)的通項式為:______________________________

解釋:通過特征方程法,

我們可以列出這樣一個方程 x^2=5*x-6

然後解得 x1=2,x2=3

那麽可以大致列出一個通項式 f(n)=a*2^n+b*3^n

最後把f(0)和f(1)代入,求出a和b的值,即可

答案為f(n)=3*2^n-2*3^n

----------------------------------------(萌萌噠的分割線)-----------------------------------------------

下面是一些關於這個方法的解釋:

問題:
遞歸公式F(N) = F(N-1)+ F(N-2),F(N)的特征方程為:x^2 = x + 1.

該遞歸公式即斐波那契數列,但其特征方程是怎麽求得的,卻不明白,於是查找了一些資料,總結如下.

首先,回顧高中數列相關的內容,如下,
技術分享
求該數列的通項公式,過程如下,
技術分享

這樣求,雖然結果正確,但過程繁瑣,很容易出錯;有一種新的方法求解遞歸公式的通項公式,即使用遞歸公式的特征方程求解遞推公式的通項公式,


先來一個直觀的例子,還是如下遞推公式,
技術分享
其特征方程為
技術分享
解為x0 = 1, x2 = 3,
則,
技術分享
代入a0 = 3, a1 = 5可得:
技術分享
可以看到,這兩種方法計算的結果相同,且都是正確的,但使用特征方程求解,十分方便.

使用特征方程的一個問題是,如何計算得到遞推公式的特征方程,
技術分享
如上圖,計算一個遞推公式的通項公式,只要將c1和c2的值帶入r^2 = c1 * r + c2即可,然後用上述的方法求解通項公式即可.

至於原理,自己數學不好,嘗試去了解一下,但無奈比較難,而且現在面臨秋招,時間比較緊,就沒有繼續往深處挖掘了.

註意,上述方法僅針對技術分享這種形式的遞推公式.

最後的最後,附上開頭問題的解決方法,為了省事,直接copy《編程之美》的內容了,


技術分享

[轉載]遞推公式的特征方程及通項公式