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)
相关推荐
报错小能手1 分钟前
数据结构 不带头结点的双向循环链表
数据结构·算法·链表
李玮豪Jimmy7 分钟前
Day26:贪心算法part4(452.用最少数量的箭引爆气球、435.无重叠区间、763.划分字母区间)
算法·贪心算法
秋深枫叶红8 分钟前
嵌入式第二十五篇——数据结构单向链表
c语言·数据结构·学习·算法
乌萨奇也要立志学C++8 分钟前
【洛谷】二分答案专题 3 道洛谷经典题(木材 / 砍树 / 跳石头)精讲
c++·算法
Liangwei Lin13 分钟前
洛谷 P1464 Function
算法
代码游侠17 分钟前
数据结构——单向链表
linux·开发语言·数据结构·学习·算法·链表
CoovallyAIHub18 分钟前
AI 项目如何避免“烂尾”?怎么选择才能让AI项目长期奔跑?
人工智能·算法·计算机视觉
qq_4308558829 分钟前
线性代数第一章第一课: 二阶三阶行列式
线性代数·算法·矩阵
星轨初途44 分钟前
C++的条件判断与循环及数组(算法竞赛类)
开发语言·c++·经验分享·笔记·算法