代码随想录算法训练营第三十二天

目录

[LeetCode.509 斐波那契数](#LeetCode.509 斐波那契数)

[题目链接 斐波那契数](#题目链接 斐波那契数)

题解

[LeetCode.70 爬楼梯](#LeetCode.70 爬楼梯)

[题目链接 爬楼梯](#题目链接 爬楼梯)

题解

[LeetCode.746 使用最小花费爬楼梯](#LeetCode.746 使用最小花费爬楼梯)

[题目链接 使用最小花费爬楼梯](#题目链接 使用最小花费爬楼梯)

题解


LeetCode.509 斐波那契数

题目链接 斐波那契数

题解

java 复制代码
class Solution {
    public int fib(int n) {
        int[] f= new int[32];
        f[0]= 0;
        f[1]= 1;
        if(n < 2){
            return n;
        }
        for(int i = 2;i<=n;i++){
            f[i] = f[i-1] + f[i-2];
        }
        return f[n];
    }
}

LeetCode.70 爬楼梯

题目链接 爬楼梯

题解

java 复制代码
class Solution {
    public int climbStairs(int n) {
        int[] f = new int[50];
        f[1] = 1;
        f[2] = 2;
        if(n <= 2) return n;
        for(int i = 3;i<=n;i++){
            f[i] = f[i-1] + f[i-2];
        }
        return f[n];
    }
}

LeetCode.746 使用最小花费爬楼梯

题目链接 使用最小花费爬楼梯

题解

java 复制代码
class Solution {
    public int minCostClimbingStairs(int[] cost) {
        int res = 0;
        int[] f = new int[1005];
        // f[i] 表示爬到 第i个位置的最小花费
        f[0] = 0;
        f[1] = 0;
        for(int i = 2;i<=cost.length;i++){
            f[i] = Math.min(f[i-2] + cost[i-2],f[i-1] + cost[i-1]);
        }
        return f[cost.length];
    }
}

总结

今天的任务非常简单。

相关推荐
朝朝又沐沐6 小时前
算法竞赛阶段二-数据结构(36)数据结构双向链表模拟实现
开发语言·数据结构·c++·算法·链表
薰衣草23337 小时前
一天两道力扣(6)
算法·leetcode
剪一朵云爱着7 小时前
力扣946. 验证栈序列
算法·
遇见尚硅谷7 小时前
C语言:*p++与p++有何区别
c语言·开发语言·笔记·学习·算法
YouQian7728 小时前
(AC)缓存系统
算法·缓存
艾莉丝努力练剑8 小时前
【数据结构与算法】数据结构初阶:详解排序(二)——交换排序中的快速排序
c语言·开发语言·数据结构·学习·算法·链表·排序算法
科大饭桶8 小时前
数据结构自学Day13 -- 快速排序--“前后指针法”
数据结构·算法·leetcode·排序算法·c
李永奉8 小时前
C语言-流程控制语句:for循环语句、while和do…while循环语句;
c语言·开发语言·c++·算法
程序员-King.8 小时前
day69—动态规划—爬楼梯(LeetCode-70)
算法·动态规划