动态规划算法-斐波那契数列模型:2.三步问题

题目链接:面试题 08.01. 三步问题(简单)

算法原理:

解法:动态规划

Java代码:

java 复制代码
/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: 王洋
 * Date: 2025-10-12
 * Time: 22:56
 */
class Solution {
    //面试题08.01.三步问题
    public int waysToStep(int n){
        //1.创建dp表
        //2.初始化
        //3.填表
        //4.返回值
        int MOD=(int)1e9+7;//默认double型
        if(n==1||n==2) return n;
        if(n==3) return 4;
        int[] dp=new int[n+1];
        dp[1]=1;dp[2]=2;dp[3]=4;
        for(int i=4;i<=n;i++)
            //每次加法都要取模
            dp[i]=((dp[i-1]+dp[i-2])%MOD+dp[i-3])%MOD;
        return dp[n];
    }
}
相关推荐
小坏讲微服务1 小时前
SpringBoot4.0整合Scala完整使用
java·开发语言·spring boot·后端·scala·mybatis
sin_hielo1 小时前
leetcode 2211
数据结构·算法·leetcode
天才测试猿1 小时前
Postman接口测试:如何导入swagger接口文档?
自动化测试·软件测试·python·测试工具·职场和发展·接口测试·postman
CoderYanger1 小时前
动态规划算法-简单多状态dp问题:16.买卖股票的最佳时机含手续费
开发语言·算法·leetcode·动态规划·1024程序员节
计算机学姐1 小时前
基于Python的校园美食推荐系统【2026最新】
开发语言·vue.js·后端·python·mysql·django·推荐算法
严文文-Chris1 小时前
【半监督学习常见算法】
学习·算法·机器学习
songtaiwu1 小时前
golang开发日常注意
开发语言·数据库·golang
FPGA_无线通信1 小时前
OFDM 同步设计(3)
算法·fpga开发