斐波那契數(shù) 斐波那契數(shù)列遞歸算法?
斐波那契數(shù)列遞歸算法?答:斐波那契數(shù)列遞歸算法是:在一列數(shù)中,從第三項開始,每項數(shù)等于和它相鄰的前面兩項數(shù)的和。用遞推式表示為:an 2=an 1 an(n≥1)如何用遞歸的方法計算并輸出斐波那契數(shù)列
斐波那契數(shù)列遞歸算法?
答:斐波那契數(shù)列遞歸算法是:在一列數(shù)中,從第三項開始,每項數(shù)等于和它相鄰的前面兩項數(shù)的和。用遞推式表示為:an 2=an 1 an(n≥1)
如何用遞歸的方法計算并輸出斐波那契數(shù)列的第n項?
關(guān)于斐波那契數(shù)列求第n項,通常有遞歸求法、遞推求法、公式求法、矩陣快速冪求法,遞歸的方法效率是最低的。那么我就來分別講這幾種方法
一. 遞歸方法
雖然同樣是遞歸,但是不同的寫法也是有講究的,例如可以有如下兩種寫法
二. 遞推求法
遞推求法比較直接,通過數(shù)組,那么有fib[n] = fib[n - 1] fib[n - 2],直接遞推就可以了。
三. 公式求法
直接通過如下公式求即可,但缺點是精度可能會損失。
四. 矩陣快速冪
通過構(gòu)造矩陣,進行遞推得到
然后通過快速冪進行分治求解,時間復(fù)雜度為O(log(n))。