Leetcode 70.爬楼梯

心路历程:

这道题是之前学院的一道复试题,大家都没怎么刷过算法题,只记得当年凭借几次试错自己把这道题做出来了,当时也不知道动态规划之类的。

正常来讲,这种找不到循环结构的题一般都是递归解决。

注意的点:

1、注意返回值种加号的含义

解法:动态规划

python 复制代码
class Solution:
    def climbStairs(self, n: int) -> int:
        # dp
        @cache  # 不加这个装饰器甚至无法AC
        def dfs(i):
            if i <= 2:
                return i
            return dfs(i-1) + dfs(i-2)
        return dfs(n)
相关推荐
博笙困了3 分钟前
AcWing学习——差分
c++·算法
NAGNIP7 分钟前
认识 Unsloth 框架:大模型高效微调的利器
算法
NAGNIP7 分钟前
大模型微调框架之LLaMA Factory
算法
echoarts8 分钟前
Rayon Rust中的数据并行库入门教程
开发语言·其他·算法·rust
Python技术极客14 分钟前
一款超好用的 Python 交互式可视化工具,强烈推荐~
算法
徐小夕17 分钟前
花了一天时间,开源了一套精美且支持复杂操作的表格编辑器tablejs
前端·算法·github
小刘鸭地下城30 分钟前
深入浅出链表:从基础概念到核心操作全面解析
算法
小刘鸭地下城40 分钟前
哈希表核心精要:从 O(1) 原理到链式地址与开放寻址
算法
BenChuat1 小时前
Java常见排序算法实现
java·算法·排序算法
元亓亓亓1 小时前
LeetCode热题100--105. 从前序与中序遍历序列构造二叉树--中等
算法·leetcode·职场和发展