动态规划算法-斐波那契数列模型:1.第N个泰波那契数

题目链接:1137. 第 N 个泰波那契数(简单)

算法原理:

解法:动态规划

Java代码:

java 复制代码
/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: 王洋
 * Date: 2025-10-11
 * Time: 21:47
 */
class Solution {
    //1137.第n个泰波那契数
    //自己写的,一遍过
    public int tribonacci(int n) {
        //1.创建dp表
        //2.初始化
        //3.填表
        //4.返回结果

        //处理边界情况
        if(n==0) return 0;
        if(n==1||n==2) return 1;
        int[] dp=new int[n+1];
        dp[0]=0;dp[1]=dp[2]=1;
        for(int i=3;i<=n;i++) dp[i]=dp[i-1]+dp[i-2]+dp[i-3];
        return dp[n];
    }

    //空间优化版本(滚动数组)
    public int tribonacci(int n) {
        //处理边界情况
        if(n==0) return 0;
        if(n==1||n==2) return 1;
        // int[] dp=new int[n+1];
        // dp[0]=0;dp[1]=dp[2]=1;
        int a=0,b=1,c=1,d=0;
        for(int i=3;i<=n;i++){
            d=a+b+c;
            a=b;b=c;c=d;
        }
        return d;
    }
}
相关推荐
froyoisle1 天前
CSP-J 历年复赛 T1 及解析(2019~2025)
数据结构·c++·算法·csp-j·csp·算法竞赛·信息学
basketball6161 天前
C++ 高级编程:2. 基本线程池实现
java·开发语言·c++
珊瑚里的鱼1 天前
【动态规划】打家劫舍Ⅱ
算法·动态规划
chao1898441 天前
SGM(Semi-Global Matching)立体匹配算法 — C++ 实现
开发语言·c++·算法
WiChP1 天前
【V0.1B11】从零开始的2D游戏引擎开发之路
开发语言·游戏引擎
黎阳之光1 天前
数智赋能水厂全链路安全|黎阳之光以视频孪生技术落地供水精细化管控
人工智能·物联网·算法·安全·数字孪生
10岁的博客1 天前
IOI 2018 高速公路收费(Highway)题解:二分与树的巧妙结合
开发语言·c++
不知名的老吴1 天前
C++运算符重载的常见注意点
开发语言·c++
弹简特1 天前
【Java项目-轻聊】07-实现主页面模块
java·开发语言