动态规划算法-斐波那契数列模型: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];
    }
}
相关推荐
江上清风山间明月3 分钟前
如何将python开发的window应用打包成exe
开发语言·python·exe·打包
SXJR9 分钟前
Java中的Cross-Encoder模型解决方案
java·开发语言
彦为君18 分钟前
JavaSE-11-BIO/NIO/AIO(多人聊天室)
java·开发语言·python·ai·nio
Cosolar19 分钟前
收藏备用!2026 年所有主流 RAG 开源项目都在这里了
人工智能·面试·llm
为何创造硅基生物20 分钟前
C 语言 typedef 结构体私有化
c语言·开发语言·算法
yzx99101323 分钟前
递归算法入门:像俄罗斯套娃一样思考
人工智能·算法
计算机安禾25 分钟前
【c++面向对象编程】第43篇:可变参数模板(C++11):优雅处理不定长参数
java·开发语言·c++
心中有国也有家29 分钟前
从零上手 CANN 学习中心:像逛技术便利店一样学昇腾
学习·算法·开源
Hanniel30 分钟前
Python __slots__ 入门指南
开发语言·python·性能优化
AI人工智能+电脑小能手33 分钟前
【大白话说Java面试题 第69题】【JVM篇】第29题:GC Roots 有哪些?
java·开发语言·jvm·面试