商用自适应网站建设,贵阳网站建,网站服务器建设方法,戴尔网站建设规划#x1f680; 算法题 #x1f680; #x1f332; 算法刷题专栏 | 面试必备算法 | 面试高频算法 #x1f340; #x1f332; 越难的东西,越要努力坚持#xff0c;因为它具有很高的价值#xff0c;算法就是这样✨ #x1f332; 作者简介#xff1a;硕风和炜#xff0c;… 算法题 算法刷题专栏 | 面试必备算法 | 面试高频算法 越难的东西,越要努力坚持因为它具有很高的价值算法就是这样✨ 作者简介硕风和炜CSDN-Java领域优质创作者保研|国家奖学金|高中学习JAVA|大学完善JAVA开发技术栈|面试刷题|面经八股文|经验分享|好用的网站工具分享 恭喜你发现一枚宝藏博主,赶快收入囊中吧 人生如棋我愿为卒行动虽慢可谁曾见我后退一步 算法题 目录 题目链接⛲ 题目描述 求解思路实现代码运行结果⚡ 动态规划 求解思路 实现代码 运行结果 共勉 题目链接
LCR 126. 斐波那契数
⛲ 题目描述
斐波那契数 通常用 F(n) 表示形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始后面的每一项数字都是前面两项数字的和。也就是
F(0) 0F(1) 1 F(n) F(n - 1) F(n - 2)其中 n 1 给定 n 请计算 F(n) 。
答案需要取模 1e97(1000000007) 如计算初始结果为1000000008请返回 1。
示例 1
输入n 2 输出1 解释F(2) F(1) F(0) 1 0 1 示例 2
输入n 3 输出2 解释F(3) F(2) F(1) 1 1 2 示例 3
输入n 4 输出3 解释F(4) F(3) F(2) 2 1 3
提示
0 n 100 求解思路实现代码运行结果 ⚡ 动态规划 求解思路 动态规划 使用动态规划的思想通过递推公式 F(n) F(n-1) F(n-2) 计算斐波那契数。 使用数组 dp 存储已经计算过的斐波那契数避免重复计算。 取模操作 在每次计算 F(n) 时对结果取模 1000000007防止数值溢出。 有了基本的思路接下来我们就来通过代码来实现一下。 实现代码
class Solution {public static final int MOD 1000000007; // 定义模数public int fib(int n) {if (n 0) return 0; // 边界条件F(0) 0if (n 1) return 1; // 边界条件F(1) 1int[] fib new int[n 1]; // 动态规划数组fib[1] 1; // 初始化 F(1)for (int i 2; i n; i) {fib[i] (fib[i - 1] % MOD fib[i - 2] % MOD) % MOD; // 递推计算 F(n)}return fib[n]; // 返回结果}
}运行结果 共勉
最后我想和大家分享一句一直激励我的座右铭希望可以与大家共勉