【剑指offer】面试题10- I:斐波那契数列(Java)
寫一個函數(shù),輸入 n ,求斐波那契(Fibonacci)數(shù)列的第 n 項。斐波那契數(shù)列的定義如下:
F(0) = 0,???F(1)?= 1
F(N) = F(N - 1) + F(N - 2), 其中 N > 1.
斐波那契數(shù)列由 0 和 1 開始,之后的斐波那契數(shù)就是由之前的兩數(shù)相加而得出。
答案需要取模 1e9+7(1000000007),如計算初始結(jié)果為:1000000008,請返回 1。
?
示例 1:
輸入:n = 2
輸出:1
示例 2:
輸入:n = 5
輸出:5
?
提示:
0 <= n <= 100
代碼:
class?Solution?{
????public?int?fib(int?n)?{
????????if(n==0||n==1)
????????{
????????????return?n;
????????}
????????int?dp[]?=?new?int[n+1];
????????dp[0]=0;dp[1]=1;
????????for(int?i=2;i<=n;i++)
????????{
????????????dp[i]?=?(dp[i-1]+dp[i-2])%1000000007;
????????}
????????return?dp[n];
????}
}
總結(jié)
以上是生活随笔為你收集整理的【剑指offer】面试题10- I:斐波那契数列(Java)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机改成服务器,旧电脑主机如何改成服务
- 下一篇: Leetcode--152. 乘积最大子