华为OD技术面试-爬楼计数(动态规划)

背景

2024-03-16 华为od 技术面试,记录题目和模型

题目

分析

入门级的 动态规划算法,直接写就行了

  • 缓存
  • 递归

代码

python 复制代码
DZs = {}
def climbStairs(n):
    if n<=0:
        return 0
    if DZs.get(n, 0)>0 :
        return DZs[n]
    if n==2:
        jf =  2
    elif n==1:
        jf = 1;
    else:
        jf1 = climbStairs(n-1)
        jf2 = climbStairs(n-2) 
        jf = jf1 + jf2
    DZs[n] = jf
    return jf

测试

相关推荐
折哥的程序人生 · 物流技术专研3 小时前
Java面试85题图解版 · 特别篇:2026后端高频面试题复盘(算法底层逻辑+高并发架构设计全解析,附Java实战代码)
java·网络·数据库·算法·面试
程序员二叉4 小时前
【Java】 异常高频面试题精讲 | 易错点+对比总结
java·开发语言·面试
weixin_523185327 小时前
Java面试高频题:Integer缓存机制与 equals、== 区别
java·缓存·面试
-森屿安年-11 小时前
91. 解码方法
c++·动态规划
胡志辉11 小时前
深入浅出理解浏览器事件循环:从一道输出题讲到 Chrome 源码
前端·javascript·面试
wabs66613 小时前
关于动态规划【力扣96.不同的二叉搜索树的递推公式怎么理解?】
算法·动态规划
嵌入式ZYXC13 小时前
第8篇:《面试题:模拟地和数字地为什么要分开?怎么接?》
stm32·单片机·嵌入式硬件·面试·职场和发展
plainGeekDev13 小时前
算法刷题笔记:一维DP没那么难,状态想清楚就赢了一半
java·算法·面试
Sam_Deep_Thinking13 小时前
java中的class到底是个什么东西?
java·开发语言·面试
mqiqe13 小时前
面试题-MyBatis 面试篇
java·面试·mybatis