【LeetCode】70.爬楼梯

leetcode 70. 爬楼梯问题(多种方法总结)     爬楼梯问题有多种出现形式,有不固定最多可跨阶数(即最多可跨阶数为M,M作为方法参数)的,有固定每次最多可跨2阶的。接下来,我就对以上两种出线形势分别进行分析。 (一)固定每次最多跨越2阶,使用非递归方式实现: 1、问题描述:  假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数。 ... 阅读详情

leetCode 题目描述:

假设你正在爬楼梯。需要 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 阶

说实话,没搞出来,看了题解:竟然跟 斐波那契有关,大学高数  没学好,我的责任。  对于 自己完全没有概念得题目,还是得靠 数学方式去解答,要尝试,各种思路,不要轻言放弃。

class Solution {
    public int climbStairs(int n) {
        int first = 1;
		int second = 2;
		if(n == 1) return 1;
		for(int i = 3; i <= n; i++){
			int third = first + second;
			first = second;
			second = third;
		}
		return second;
    }
}

以后,还是要看看高数啊

 

 

 

0

LeetCode70 爬楼梯 LeetCode70 爬楼梯题目解题解题一:制表法自上而下递归解题二:动态规划自下而上递推解题三:矩阵快速幂解题四:通项公式 题目 解题 与 LeetCode《程序员面试金典》面试题 08.01. 三步问题 类似 解题一:制表法自上而下递归 // javascript var climbStairs = function(n) { let memos = new Array(n + 1).fill(-1); // 制表 return climbStairsHelper(n, memos); 阅读详情

相关推荐

【简单】力扣算法题解析LeetCode70:爬楼梯

爬楼梯问题要求计算爬到第 n 阶台阶的方法数,每次可爬 1 或 2 阶。通过动态规划,将问题转化为斐波那契数列:dp[i] = dp[i-1] + dp[i-2]。初始条件为 dp[1]=1,dp[2]=2。优化空间复杂度至 O(1),仅用两个变量滚动更新。Java 实现通过循环计算,最终返回 prev2 作为结果。时间复杂度 O(n),空间复杂度 O(1),适用于 n 较大时的高效求解。

ylumwd的博客 509

【力扣】70.爬楼梯

题目描述(简单) 假设你正在爬楼梯。需要n阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 注意:给定n是一个正整数。 题目链接 https://leetcode-cn.com/problems/climbing-stairs/ 示例 1: 输入: 2 输出: 2 解释: 有两种方法可以爬到楼顶。 1. 1 阶 + 1 阶 2....

YTea的博客 419

python【力扣LeetCode算法题库】70-爬楼梯

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

NJU phd 在读。 1169

力扣【LeetCode】—— 70. 爬楼梯【java】

题目地址:https://leetcode-cn.com/problems/climbing-stairs/

眉头的骰 886

LM358实战:手把手教你搭建电流检测电路(附电阻选型计算)

本文详细解析了使用LM358运算放大器搭建电流检测电路的全过程,包括基础原理、采样电阻选型、放大电路设计及PCB布局技巧。通过实战案例和精确计算,帮助工程师快速掌握低成本、高精度的电流检测方案,适用于电源管理、电机控制等多种应用场景。

weixin_30872157的博客 448

ChatIE:基于ChatGPT的零样本信息抽取实战指南

信息抽取是自然语言处理中的核心任务,旨在从非结构化文本中自动识别并结构化关键信息,如实体、关系及事件。传统方法依赖大量标注数据训练专用模型,流程复杂且成本高昂。随着大语言模型的发展,通过提示工程引导模型理解任务,实现了无需训练数据的零样本抽取能力,极大降低了技术门槛与应用成本。这种范式将信息抽取重构为多轮对话问题,通过分阶段提问引导模型逐步输出结构化结果,在快速原型验证、领域适配及小规模数据探索中展现出显著技术价值。本文以ChatIE项目为例,深入解析如何利用ChatGPT API,通过精心设计的提示词与两

weixin_30540691的博客 404

《LeetCode力扣练习》第70题 爬楼梯 Java

《LeetCode力扣练习》第70题 爬楼梯 Java 一、资源 题目: 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 示例 1: 输入:n = 2 输出:2 解释:有两种方法可以爬到楼顶。 1 阶 + 1 阶 2 阶 示例 2: 输入:n = 3 输出:3 解释:有三种方法可以爬到楼顶。 1 阶 + 1 阶 + 1 阶 1 阶 + 2 阶 2 阶 + 1 阶 提示: 1 <= n <= 45 来源:力扣

XRT_knives的博客 800

别自己写CDC了!聊聊Xilinx AXI4-Stream Clock Converter IP里的寄存器管道模式到底有多省资源

本文探讨了Xilinx AXI4-Stream Clock Converter IP核的寄存器管道模式在FPGA设计中的高效资源利用。通过对比手工CDC实现,详细解析了IP核的精简化同步架构和时序收敛优势,并提供了实战案例和优化策略,帮助工程师快速实现时钟域转换,显著提升设计效率和性能。

weixin_33738555的博客 441

【LeetCode力扣】70. 爬楼梯 (简单)

我们可以用F(n)来表示爬到第n个阶梯的总方案数,因为一次可以上1或2个阶梯,所以最后一步可能跨了1个台阶,也可能跨了2个台阶;意思就是最后一步可能是从第n-1个台阶跨到了第n个台阶,或者是从第n-2个台阶跨到了第n个台阶;

m0_65277261的博客 1818

瑞萨 RL78 开发环境实战:从 CS+ for CC 到 e² studio 高效开发

本文详细介绍了瑞萨RL78单片机开发环境的选择与配置,对比分析了CS+ for CC和e² studio的特点及适用场景。内容涵盖环境安装、工程创建、调试技巧、外设驱动开发和低功耗设计等实战经验,为开发者提供全面的RL78入门指南,帮助快速上手并高效开发。

4k5l6j7h8的博客 242

ST-Link V2的隐藏技能:多通道串口调试的终极指南

本文深入探讨了ST-Link V2的多通道串口调试功能,突破传统烧录工具的限制。通过详细的硬件配置、Arduino IDE设置和实战案例,展示了如何利用SWD接口实现多通道数据监控,提升STM32F103C8T6等开发板的调试效率。文章还提供了PCB布局优化和性能调优技巧,助力开发者充分发挥ST-Link V2的潜能。

weixin_29285605的博客 355

LeetCode 力扣 70. 爬楼梯

题目描述(简单难度) 爬楼梯,每次走 1 个或 2 个台阶,n 层的台阶,总共有多少种走法。 解法一 暴力解法 用递归的思路想一下,要求 n 层的台阶的走法,由于一次走 1 或 2 个台阶,所以上到第 n 个台阶之前,一定是停留在第 n - 1 个台阶上,或者 n - 2 个台阶上。所以如果用 f ( n ) 代表 n 个台阶的走法。那么, f ( n ) = f ( n - 1) + f ( ...

wind_liang的博客 1350

Dify知识库文档批量下载神器:一键导出所有文件到本地

在使用Dify进行知识库管理的过程中,我们经常遇到一个实际问题:如何将已上传到知识库中的文档批量下载到本地?目前Dify的管理界面虽然功能强大,但暂时没有提供直接的UI界面来批量导出或下载知识库内的文档。这意味着如果我们需要将知识库中的文件备份到本地或进行离线处理,只能通过API接口来实现。本文将详细介绍如何利用Dify的REST API构建一个完整的知识库文档下载解决方案,这也是目前实现知识库文件批量下载到本地的唯一可行路径。🎉进入大模型应用与实战专栏 | 🚀查看更多专栏内容首先,我们需要在Dify的

羊城迷鹿的博客 3473

力扣 leetcode70. 爬楼梯C++三种方法实现优化

力扣 leetcode70. 爬楼梯C++三种方法实现优化 leetcode70. 爬楼梯 class Solution { public: int climbStairs(int n) { //我们假设现在在第n个台阶上 那么其前一步一共有两种可能 //1. 在第n-1级台阶上 //2. 在第n-2级台阶上 //方法1 递归 初始为dp[1] = 1 dp[2] = 2; 该方法由于需要计算重复信息 会导致超时

qq_36711295的博客 822

ABAP 平台下配置 OAuth 2.0 Authorization Code 授权类型的完整指引

本文是面向ABAP管理员和SAP开发者的OAuth 2.0授权码配置实战指南。文章详细介绍了在ABAP平台启用Authorization Code的完整流程,包括前置条件检查(如TLS配置和系统用户准备)、SOAUTH2事务码中各字段配置要点(授权类型启用、Redirect URI设置、授权码有效期等)、Scope分配规则以及验证方法。通过一个销售订单OData接口的实际案例,说明了如何将抽象规范转化为具体配置。最后提供了多种验证方式(事务码测试、端点测试和Postman测试)以及关键配置参数(如授权码有效

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 296

【100%通过率】华为od机试C卷【特殊的加密算法】Python 实现

有一种特殊的加密算法,明文为一段数字串,经过密码本查找转换,生成另一段密文数字串。规则如下1.明文为一段数字串由0-9组成2.密码本为数字0-9组成的二维数组3.需要按明文串的数字顺序在密码本里找到同样的数字串,密码本里的数字串是由相邻的单元格数字组成,上下和左右是相邻的,注意:对角线不相邻,同一个单元格的数字不能重复使用。

MISAYAONE的博客 5924

70. 爬楼梯【 力扣(LeetCode) 】

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

yyh520025的博客 1577

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

力扣70. 爬楼梯

这道题很显然属于斐波那契数列的一个变体,所以第一想法是使用递归去做。于是很容易得到公式f(n)=f(n-1)+f(n-2) f(1)=1 f(2)=2,是一个多路递归。但是如果单纯递归这道题会超时,所以还需要加上一个备忘录,通过map将之前出现的值存储一下,这个也就是递归优化-记忆法。

qq_45858191的博客 479

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

LeetCode70爬楼梯

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

sakurasakura1996的博客 518

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

70. 爬楼梯 - 力扣(LeetCode)

爬楼梯中,假如n == 30,那么最后一步要么是上一个台阶或者是上两个台阶,两种方法没有重叠,子问题就是 n == 29 和 n == 28,n == 30 的结果就是 (n== 29结果 + n == 28结果),子问题也去找子问题的答案。(动态规划时间复杂度一般很高,因为会有大量答案被重复计算,比如n == 29 后面的子问题,n == 28 也要再算一次,所以需要优化记录被算过的答案,这里用记忆化搜索,一个外部变量来记录,也有其他优化的方法)重点:分清子问题是什么,子问题之间是否独立。

xxm919的博客 136

LeetCode 70:爬楼梯(Java实现)

LeetCode 70:爬楼梯题目思路1:动态规划代码结果思路2:数学,斐波那契 题目 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数。 示例 1: 输入: 2 输出: 2 解释: 有两种方法可以爬到楼顶。 1 阶 + 1 阶 2 阶 示例 2: 输入: 3 输出: 3 解释: 有三种...

qq_45093368的博客 832

LeetCode 70 - 爬楼梯

本文介绍了LeetCode第70题“爬楼梯”的解题方法。题目要求计算爬到n阶楼梯的不同方法数,每次可以爬1或2阶。核心思路是将问题转化为斐波那契数列问题,通过动态规划求解。文章详细讲解了三种解法:基础动态规划(O(n)空间)、空间优化动态规划(O(1)空间)和矩阵快速幂(O(log n)时间)。提供了Python、Java和Rust的代码实现,并总结了动态规划的关键点、易错点和优化方向。该问题帮助理解状态转移和空间优化技巧,是动态规划的经典入门题目。

weixin_45980775的博客 1443

力扣(JavaScript)—70. 爬楼梯

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

qq_43959230的博客 598

Leetcode70--爬楼梯

Leetcode70–爬楼梯 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 编程语言:python 作者:黑暗主宰 邮箱:shengzhanhe@gmail.com 文章目录Leetcode70--爬楼梯题目描述解题思路 Leetcode70–爬楼梯 题目描述 原题链接: ​ https://leetcode-cn.com...

EngineerHe的博客 622

力扣[LeetCode].70. 爬楼梯

假设你正在爬楼梯。需要 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 阶 解析以及总结: class Solution { public:

C/C++/Linux/MySQL 456
上一篇: 【LeetCode】69.x的平方根
下一篇: 【leetCode】83.删除排序链表中重复的元素
jy0921_
博客等级 码龄11年 329粉丝 193原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值