菲波那切數列(劍指offer)---c語言
劍指 Offer 10- I. 斐波那契數列
寫一個函式,輸入 n ,求斐波那契(Fibonacci)數列的第 n 項。斐波那契數列的定義如下:
F(0) = 0, F(1) = 1
F(N) = F(N - 1) + F(N - 2), 其中 N > 1.
斐波那契數列由 0 和 1 開始,之後的斐波那契數就是由之前的兩數相加而得出。
答案需要取模 1e9+7(1000000007),如計算初始結果為:1000000008,請返回 1。
示例 1:
輸入:n = 2
輸出:1
示例 2:
輸入:n = 5
輸出:5
提示:
0 <= n <= 100
int fib(int n)
{
if(n == 0)
{
return 0;
}
int f0 = 0;
int f1 = 1;
int f2 = 0;
f2 = f0 + f1;
for(int i = 0; i < n-1; ++i)
{
f2 = (f0 + f1)%1000000007;
f0 = f1;
f1 = f2;
}
return f1;
}
相關文章
- 劍指offer-9-斐波那契數列-javaJava
- C++版本 17:菲波那契數列C++
- 劍指offer面試題9 斐波那契數列及青蛙跳臺階問題面試題
- 包含min函式的棧(劍指offer)---C語言函式C語言
- 劍指offer——把陣列排成最小的數C++陣列C++
- 【劍指offer】把陣列排成最小的數陣列
- 菲波那契數——根據輸入資料中的n,輸出第n項菲波那契數
- 斐波那契數列 多語言實現 筆記筆記
- 斐波那契數列 (C#)C#
- 劍指 offer(1) -- 陣列篇陣列
- 劍指offer:旋轉陣列的最小數字陣列
- 劍指offer 旋轉陣列的最小數字陣列
- 菲波那契數 時間限制: 1000 ms 記憶體限制: 65536 KB 提交數: 51737 通過數: 26371 【題目描述】 菲波那契數列是指這樣的數列: 數列的第一個和記憶體
- 劍指offer——陣列中的逆序對C++(75%)陣列C++
- 《劍指 Offer》棧實現佇列佇列
- 劍指Offer--陣列中重複的數字陣列
- 劍指Offer-34-把陣列排成最小的數陣列
- 劍指offer-轉陣列的最小數字-php陣列PHP
- 《劍指offer》:[51]陣列中的重複數字陣列
- 【劍指offer】字串轉整數字串
- 【劍指offer】數字在排序陣列中出現的次數排序陣列
- 劍指offer——把字串轉換成整數C++字串C++
- [C103] 斐波那契數列
- 【劍指offer】7.旋轉陣列的最小數字陣列
- 劍指 Offer 11. 旋轉陣列的最小數字陣列
- 【劍指 Offer】11. 旋轉陣列的最小數字陣列
- 《劍指offer》:[41]陣列中和為S的兩個數陣列
- 劍指offer之順序列印陣列陣列
- 【劍指offer】陣列中的逆序對陣列
- 【劍指offer】調整陣列順序陣列
- 劍指Offer 表示數值的字串字串
- 《劍指offer》:[38]數字在排序陣列中出現的次數排序陣列
- 斐波那契數列
- 劍指 Offer 列印從1到最大n位數c++C++
- 力扣 - 劍指 Offer 45. 把陣列排成最小的數力扣陣列
- 劍指Offer-37-陣列中逆序對陣列
- 《劍指offer》:[52]構建乘積陣列陣列
- 劍指Offer-39-數字在排序陣列中出現的次數排序陣列