斐波那契數列普通 遞迴和優化遞迴實現

2021-09-27 02:21:25 字數 596 閱讀 1111

斐波那契額數列,又稱為**分割數列,指的是這樣乙個數列:

1、1、2、3、5、8、13、21、······

簡單來說就是前兩項的和是第三項的值。

1、普通實現(迭代)

#include

using

namespace std;

intfibon

(int n)

return c;

}int

main()

2、遞迴實現
#include

using

namespace std;

intfibon

(int n)

else

}int

main()

3、優化遞迴實現
#include

using

namespace std;

intfibonc

(int a,

int b,

int n)

return a;

}int

main()

斐波那契數列 遞迴和遞迴優化

斐波那契數列 經典數學問題之一 斐波那契數列,又稱 分割數列,指的是這樣乙個數列 1 1 2 3 5 8 13 21 想必看到這個數列大家很容易的就推算出來後面好幾項的值,那麼到底有什麼規律,簡單說,就是前兩項的和是第三項的值,也許你會想到的是迭代,也學你想到的是遞迴。簡單分析一下遞迴 int fi...

斐波那契數列 遞迴和遞迴優化

斐波那契數列,即兔子問題 演算法筆試題可能會出現 function fun n return fun n 1 fun n 2 效能問題 1,自身巢狀太深,可能會引起堆疊溢位 堆疊溢位 函式呼叫會使用棧來儲存臨時變數。每呼叫乙個函式,都會將臨時變數封裝為棧幀壓入記憶體棧,等函式執行完成返回時,才出棧。...

遞迴優化 斐波那契

f n f n 1 f n 2 1,2,3,5,8.自頂向下使用的遞迴層次比較多,在n取值較大的情況下,效率很低 時間維度 所以可以使用陣列來替換多重遞迴呼叫,即以空間來置換時間 intersting include include include include include include d...