算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试。所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 !

今天和大家聊的问题叫做 爬楼梯,我们先来看题面:

https://leetcode-cn.com/problems/climbing-stairs/

You are climbing a stair case. It takes n steps to reach to the top.

Each time you can either climb 1 or 2 steps. In how many distinct ways can you climb to the top?

题意

假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数。 样例

示例 1:
输入:2
输出:2
解释:有两种方法可以爬到楼顶。1. 1 阶 + 1 阶2. 2 阶
示例 2:
输入:3
输出:3
解释:有三种方法可以爬到楼顶。1. 1 阶 + 1 阶 + 1 阶2. 1 阶 + 2 阶3. 2 阶 + 1 阶

解题

本题可以利用动态规划解决 。 思路:可以这样想,n个台阶,一开始可以爬 1 步,也可以爬 2 步,那么n个台阶爬楼的爬楼方法就等于 一开始爬1步的方法数 + 一开始爬2步的方法数,这样我们就只需要计算n-1个台阶的方法数 和n-2个台阶方法数,同理,计算n-1个台阶的方法数只需要计算一下n-2个台阶和n-3个台阶,计算n-2个台阶需要计算一下n-3个台阶和n-4个台阶……

class Solution {public int climbStairs(int n) {if(n==1)return 1;int sum[]=new int[n+1];
        sum[0]=0;sum[1]=1;sum[2]=2;for(int i=3;i<=n;i++){
         sum[i]=sum[i-2]+sum[i-1];
     }return sum[n];
    }
}

好了,今天的文章就到这里,如果觉得有所收获,请顺手点个在看或者转发吧,你们的支持是我最大的动力。

上期推文:

LeetCode40-60题汇总,速度收藏!LeetCode刷题实战61:旋转链表LeetCode刷题实战62:不同路径LeetCode刷题实战63:不同路径 IILeetCode刷题实战64:最小路径和LeetCode刷题实战66:加一LeetCode刷题实战67:二进制求和LeetCode刷题实战68:文本左右对齐LeetCode刷题实战69:x 的平方根

c++刷题_LeetCode刷题实战70:爬楼梯相关推荐

  1. 刷题第45, 46天 | 70. 爬楼梯 (进阶)、322. 零钱兑换、279.完全平方数、139.单词拆分

    70. Climbing Stairs 题目链接:70. Climbing Stairs 思路链接:代码随想录动态规划-爬楼梯(进阶) 思路 思路 Code class Solution {publi ...

  2. LeetCode 70爬楼梯71简化路径72编辑距离(dp)

    新人公众号(求支持):bigsai 专注于Java.数据结构与算法,一起进大厂不迷路! 算法文章题解全部收录在github仓库bigsai-algorithm,求star! 关注这个潇洒青年一起飞,回 ...

  3. 动态规划——斐波那契数列(70. 爬楼梯、198. 打家劫舍、213. 打家劫舍II、信件错排、母牛生产)

    递归和动态规划都是将原问题拆分成多个子问题然后求解,但是动态规划存储了子问题的解,不需要重复计算. 动态规划(Dynamic Programming,DP)需要转移方程和边界条件. 目录 一.70. ...

  4. D38| DP理论基础 509. 斐波那契数 70. 爬楼梯 746. 使用最小花费爬楼梯

    DP理论基础 重要知识点: 1.动规和贪心的区别:动规是由前一个状态推导出来的,而贪心是局部直接选最优的 2.动规五部曲: 1)确定dp数组(dp table)以及下标的含义 2)确定递推公式 3)d ...

  5. 70. 爬楼梯【106】

    难度等级:简单 上一篇算法: 剑指 Offer 10- I. 斐波那契数列[33] 力扣此题地址: 70. 爬楼梯 - 力扣(Leetcode) 题目:爬楼梯 解题思路: 此题和< 剑指 Off ...

  6. 力扣算法 509. 斐波那契数 70. 爬楼梯 746. 使用最小花费爬楼梯

    学习内容 力扣算法 509. 斐波那契数 70. 爬楼梯 746. 使用最小花费爬楼梯 具体内容 509. 斐波那契数 斐波那契数,通常用 F(n) 表示,形成的序列称为 斐波那契数列 .该数列由 0 ...

  7. LeetCode-基础动态规划-70. 爬楼梯

    描述 70.爬楼梯 假设你正在爬楼梯.需要 n 阶你才能到达楼顶. 每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数. 示例 1: 输入: 2 输出 ...

  8. 变形版汉诺塔:LeetCode:70爬楼梯

    70. 爬楼梯 题目链接:70:爬楼梯 假设你正在爬楼梯.需要 n 阶你才能到达楼顶. 每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数. 示例 1 ...

  9. leetcode - 70. 爬楼梯

    70. 爬楼梯 -------------------------------------- 假设你正在爬楼梯.需要 n 阶你才能到达楼顶. 每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以 ...

  10. LeetCode 70. 爬楼梯 (递归斐波那契 | 动态规划)

    70. 爬楼梯 解法1 (暴力递归) 推出递推式子:f(n) = f(n - 1) + f(n - 2) 是一个斐波那契数列,用递归 class Solution {public int climbS ...

最新文章

  1. Mysql5.6-DDL是否加锁
  2. leetcode算法题--最小路径和
  3. 用VC++实现USB接口读写数据的程序
  4. 老王学java之This()的用法
  5. 从实际案例聊聊Java应用的GC优化--转
  6. 安装ubuntu20.4+gtx1050+cuda11.3
  7. 深度解析HashMap高频面试及底层实现架构!
  8. x^A=B(mod C)的解 (离散对数与原根)
  9. vuex的使用和封装
  10. 跟我一起写Makefile:隐含规则
  11. 大数据采集技术和预处理技术
  12. Python视觉深度学习系列教程 第三卷 第11章 车辆识别
  13. 计算机各种办公软件都很卡,电脑中打开office2016办公软件很卡的解决方法
  14. NoClassDefFoundError: com/fasterxml/jackson/core/util/DefaultIndenter
  15. html保持div长宽比例,div自适应宽高保持比例不变
  16. 软考高项 : (22)2016年下半年论文写作真题
  17. 关于APP界面布局设计的八种优缺点
  18. (2020年最新版)App Store 审核指南
  19. 5分钟搞懂什么是深度学习
  20. 2010中国互联网哈哈榜

热门文章

  1. Linux下nvidia压力测试,一种服务器linux系统下GPU压力测试的监控方法与流程
  2. iOS-Xcode7安装CocoaPods
  3. 高德逆地理编码接口返回数据格式不统一以及百度逆地理编码接口返回数据解析失败的踩坑记录
  4. 文明6游戏 linux,《文明6》正式支持Linux/SteamOS 但不支持Intel核显和A卡
  5. 获取微信小程序码传递的参数 / 微信开发者工具模拟扫描小程序码调试
  6. 合伙创业 务必远离十种人
  7. 微众银行眼中的区块链分布式商业趋势及技术落地
  8. 头条号搬运项目,小白简单上手日入200+
  9. 2021-2022年,跨年总结
  10. 录制电脑声音(无需其他软件)