刷刷刷 Day 38 | 70. 爬楼梯

该文章介绍了如何使用动态规划方法解决LeetCode上的爬楼梯问题。通过定义dp数组,遵循动归五部曲,确定递推公式dp[i]=dp[i-1]+dp[i-2],并初始化dp[1]=1,dp[2]=2,最后遍历计算所有台阶的方法数。重点在于理解和应用动态规划思想。
摘要由CSDN通过智能技术生成
70. 爬楼梯
LeetCode题目要求

假设你正在爬楼梯。需要 n 阶你才能到达楼顶。

每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?

示例

输入:n = 2
输出:2
解释:有两种方法可以爬到楼顶。
1. 1 阶 + 1 阶
2. 2 阶
解题思路

使用动态规划,依旧是动归五部曲

  1. 确定数组 dp[i] i 为台阶,dp[i] 对应走这个太极的方法数

  2. 确定递推公式 dp[i] = dp[i-1] + dp[i-2]

  3. 初始化数组 dp[1] = 1; dp[2] = 2

  4. 确定遍历顺序 从前往后

  5. 举例推导数组
    /**
    1阶 1 1
    2阶 1+1 2
    2
    3阶 1+1+1 3
    1+2
    2+1
    4阶 1+1+1+1 5
    1+1+2
    1+2+1
    2+1+1
    2+2

    走 4 阶,就相当于走 3 阶 和 1阶;走 3 阶 就相当于于走 2 阶 和 1 阶
     递推公式为 dp[i] = dp[i-1] + dp[i-2]
      */

上代码

class Solution {
    public int climbStairs(int n) {

        // 先搞五部曲
        // 1. 确定数组 
        // 2. 确定递推公式
        // 3. 初始化数组
        // 4. 确定遍历顺序
        // 5. 举例推导数组

        // 由于每次只能爬 1 或 2 个台阶

        if (n == 1) {
            return 1;
        }
        if (n == 2) {
            return 2;
        }

        // dp[i] 爬到第 i 个台阶,有 dp[i] 种方法
        int[] dp = new int[n+1]; 

        // 1 阶 1 种方法
        dp[1] = 1;
        // 2 阶 2 种方法
        dp[2] = 2;

        for (int i = 3; i <= n; i++) {
            dp[i] = dp[i-1] + dp[i-2];
        }
       
        return dp[n]; 
    }
}
重难点

理解动归五部曲

附:学习资料链接

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
postcss-px-to-viewport是一个PostCSS插件,用于将CSS中的像素单位(px)转换为视口单位(vw、vh、vmin、vmax)。它可以帮助开发者在移动端适配中解决不同设备屏幕尺寸带来的问题。 当你的CSS文件中的像素单位被格式化为px时,可能是由于使用了其他工具或插件对CSS进行了处理。如果你想使用postcss-px-to-viewport来进行单位转换,可以按照以下步骤进行操作: 1. 首先,确保你已经安装了postcss-px-to-viewport插件。可以通过npm或yarn进行安装。 2. 在你的项目中找到PostCSS的配置文件(通常是postcss.config.js或者.postcssrc.js),在该文件中添加postcss-px-to-viewport插件的配置。 例如: ```javascript module.exports = { plugins: [ require('postcss-px-to-viewport')({ viewportWidth: 750, // 视口的宽度,单位为px viewportHeight: 1334, // 视口的高度,单位为px unitPrecision: 3, // 转换后的视口单位保留的小数位数 viewportUnit: 'vw', // 转换的视口单位 selectorBlackList: ['.ignore'], // 需要忽略的CSS选择器,不进行转换 minPixelValue: 1, // 小于或等于1px不进行转换 mediaQuery: false // 是否在媒体查询中也进行转换 }) ] } ``` 3. 配置完成后,重新编译你的CSS文件,插件会自动将像素单位转换为视口单位。 如果你的CSS文件中的像素单位被格式化为px,可以尝试检查是否有其他插件或工具对CSS进行了处理,并确保postcss-px-to-viewport插件已正确配置。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值