
动态规划:
c++
class Solution {
public:
int fib(int n) {
vector<int> dp(n+3);
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];
}
};
python
class Solution:
def fib(self, n: int) -> int:
dp = [0 for _ in range(n+3)] ## 创建列表
dp[0] = 0
dp[1] = 1
for i in range(2,n+1):
dp[i] = (dp[i-1] + dp[i-2]) % 1000000007 # python 取模 返回除法的余数
return dp[n]

本文介绍使用动态规划解决斐波那契数列问题的方法,通过C++及Python代码展示了如何高效地计算斐波那契数列的第n项,并采用取模操作来避免整数溢出。
654

被折叠的 条评论
为什么被折叠?



