华为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

测试

相关推荐
小李小李快乐不已1 分钟前
动态规划理论基础
数据结构·c++·算法·leetcode·动态规划
ocean21034 分钟前
Linux面试题图解
linux·运维·服务器·面试·职场和发展
少许极端32 分钟前
算法奇妙屋(二十一)-两个数组或字符串的dp问题(动态规划)
算法·动态规划·两个数组或字符串的dp问题
xiaoxue..1 小时前
二叉搜索树 BST 三板斧:查、插、删的底层逻辑
javascript·数据结构·算法·面试
liang_jy11 小时前
Android 事件分发机制(二)—— 点击事件透传
android·面试·源码
零雲11 小时前
java面试:知道java的反射机制吗
java·开发语言·面试
努力学算法的蒟蒻14 小时前
day46(12.27)——leetcode面试经典150
算法·leetcode·面试
Maxkim15 小时前
「✍️JS原子笔记 」深入理解JS数据类型检测的4种核心方式
前端·javascript·面试
byzh_rc15 小时前
[算法设计与分析-从入门到入土] 动态规划
算法·动态规划
踏浪无痕16 小时前
JobFlow 的延时调度:如何可靠地处理“30分钟后取消订单”
后端·面试·开源