博客
关于我
70. 爬楼梯
阅读量:787 次
发布时间:2023-01-23

本文共 523 字,大约阅读时间需要 1 分钟。

对于爬楼梯问题,我们可以通过递推的方式找到解决方案。设f(n)为爬n阶楼梯的方法数,每次可以爬1阶或2阶。我们发现,f(n) = f(n-1) + f(n-2),这是因为最后一步可以是1阶或2阶,而前n-1阶和前n-2阶的方法数之和即为当前的方法数。初始条件为f(1)=1和f(2)=2。

以下是使用迭代方法计算f(n)的代码:

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

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

注意:给定 n 是一个正整数.

public int climbStairs(int n) {      if (n == 1) return 1;      if (n == 2) return 2;      int left = 1, right = 2;      int i = 3;      while (i <= n) {          int next = left + right;          left = right;          right = next;          i++;      }      return right;  }

转载地址:http://fseyk.baihongyu.com/

你可能感兴趣的文章
wxWidgets源码分析(9) - wxString
查看>>
[梁山好汉说IT] 梁山好汉和抢劫银行
查看>>
[源码解析] 消息队列 Kombu 之 基本架构
查看>>
[源码分析] 消息队列 Kombu 之 启动过程
查看>>
wx.NET CLI wrapper for wxWidgets
查看>>
Silverlight for linux 和 DLR(Dynamic Language Runtime)
查看>>
ASP.NET MVC Action Filters
查看>>
Powershell中禁止执行脚本解决办法
查看>>
OO_Unit2 多线程电梯总结
查看>>
git clone 出现fatal: unable to access ‘https://github 错误解决方法
查看>>
04_Mysql配置文件(重要参数)
查看>>
python 加密算法及其相关模块的学习(hashlib,RSA,random,string,math)
查看>>
JavaSE总结
查看>>
Python IO编程
查看>>
使用 TortoiseGit 时,报 Access denied 错误
查看>>
基于 HTML5 WebGL 的污水处理厂泵站自控系统
查看>>
c++之程序流程控制
查看>>
spring-boot-2.0.3之redis缓存实现,不是你想的那样哦!
查看>>
李笑来必读书籍整理
查看>>
Hadoop(十六)之使用Combiner优化MapReduce
查看>>