裴波那契數列的第n項,可以很簡單的使用遞迴,但是遞迴很多層之後有可能會造成棧溢位,而且速度也不一定會快。只是方法簡單了,當面臨大量的計算層數的時候遞迴並不是很好的選擇。改進方法就是儲存每次計算的結果,下一次計算的時候可以呼叫。
package others;
import stringtest.replaceblank;
import sorttest.insertsorttest;
/** * 求裴波那契數列的第n項
* *@author duola
* */
public
class
peibonaqie
// 方法2,改進遞迴,每次儲存上一次的結果
private
static
long
pbnq2(int n)
return targ;
}public
static
void
main(string args)
}
求斐波那契數列的第n項
斐波那契數列的定義如下 f 0 0 f 1 1 f n f n 1 f n 2 n 2 1,1,2,3,5,8,13,21,34,55,89,144,233,377,給出n,求f n 由於結果很大,輸出f n 1000000009的結果即可。input 輸入1個數n 1 n 10 18 output...
求斐波那契數列的第n項
問題描述 斐波那契數列是這樣的乙個數列,1,1,2,3,5,8,即前兩項都是1,後面每一項都是其前面兩項的和。現在要你求出該數列的第n項。解法一 遞迴演算法。很多教科書上都用這個題作為函式遞迴知識點講解的例題,我們可以將每乙個項的求法表達為這樣乙個式子 f n f n 1 f n 2 f 1 1,f...
裴波那契數列(迴圈實現遞迴)
裴波那契 fibonacci 數列 f n 0,1 f n 1 f n 2 n 0n 1n 1 求裴波那契數列的第n項。題目來自劍指offer 1.遞迴解法,效率很低的解法,不用 一看到這個題,我們就很容易竊喜的想到這種解法 很多f i 進行了重複計算,隨著n的增大,計算量急劇增加,時間複雜度以n的...