华为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 小时前
day40(12.21)——leetcode面试经典150
算法·leetcode·面试
a努力。1 小时前
国家电网Java面试被问:二叉树的前序、中序、后序遍历
java·开发语言·后端·面试
lalala_Zou1 小时前
小米日常实习一面
java·后端·面试
LYFlied2 小时前
【每日算法】LeetCode238. 除自身以外数组的乘积
数据结构·算法·leetcode·面试·职场和发展
a程序小傲2 小时前
京东Java面试被问:垃圾收集算法(标记-清除、复制、标记-整理)的比较
java·算法·面试
xu_yule2 小时前
算法基础(区间DP)
数据结构·c++·算法·动态规划·区间dp
LYFlied2 小时前
【每日算法】LeetCode 226. 翻转二叉树
前端·算法·leetcode·面试·职场和发展
LYFlied3 小时前
【每日算法】LeetCode 104. 二叉树的最大深度
前端·算法·leetcode·面试·职场和发展
程序员三明治5 小时前
【动态规划】01背包与完全背包问题详解,LeetCode零钱兑换II秒解,轻松解力扣
算法·leetcode·动态规划·java后端·01背包·完全背包·零钱兑换
踏浪无痕14 小时前
JobFlow 实战:无锁调度是怎么做到的
后端·面试·架构