509. 斐波那契数

斐波那契数 (通常用 F(n) 表示)形成的序列称为 斐波那契数列 。该数列由 01 开始,后面的每一项数字都是前面两项数字的和。也就是:

复制代码
F(0) = 0,F(1) = 1
F(n) = F(n - 1) + F(n - 2),其中 n > 1

给定 n ,请计算 F(n)

示例 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 <= 30
cpp 复制代码
class Solution {
public:
    int fib(int n) {
        //定义dp数组的意思
        //状态
        //初始化
        //遍历顺序
        //dp数组值是否符合
        if(n < 2) return n;
        // 表示第一个斐波那契数为dp[i];
        vector<int>dp(n+1); // 因为下面直接访问dp[0]和dp[1],所以得先加内存。
        dp[0] = 0;
        dp[1] = 1;
        for(int i = 2;i <= n;i++){
            dp[i] = dp[i-1]+dp[i-2];
        }
        return dp[n];
    }
};
相关推荐
知乎的哥廷根数学学派8 分钟前
面向可信机械故障诊断的自适应置信度惩罚深度校准算法(Pytorch)
人工智能·pytorch·python·深度学习·算法·机器学习·矩阵
txinyu的博客24 分钟前
解析业务层的key冲突问题
开发语言·c++·分布式
666HZ6661 小时前
数据结构2.0 线性表
c语言·数据结构·算法
SmartRadio2 小时前
ESP32添加修改蓝牙名称和获取蓝牙连接状态的AT命令-完整UART BLE服务功能后的完整`main.c`代码
c语言·开发语言·c++·esp32·ble
实心儿儿2 小时前
Linux —— 基础开发工具5
linux·运维·算法
charlie1145141913 小时前
嵌入式的现代C++教程——constexpr与设计技巧
开发语言·c++·笔记·单片机·学习·算法·嵌入式
清木铎4 小时前
leetcode_day4_筑基期_《绝境求生》
算法
清木铎4 小时前
leetcode_day10_筑基期_《绝境求生》
算法
j_jiajia4 小时前
(一)人工智能算法之监督学习——KNN
人工智能·学习·算法
源代码•宸5 小时前
Golang语法进阶(协程池、反射)
开发语言·经验分享·后端·算法·golang·反射·协程池