博客
关于我
70. 爬楼梯
阅读量:788 次
发布时间: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/

你可能感兴趣的文章
Python&aconda系列:Jupyter Notebook快速上手、深度学习库PyTorch安装
查看>>
Python&aconda系列:(W&L)Conda使用faiss-gpu报错及解决办法、安装numpy的坑、cmd执行Python脚本找不到第三方库、安装tensorflow-gpu时遇到的from
查看>>
python&anconda 系列:Pycharm在debug问题的N种解决方案(一般程序、web方向、人工智能方向)
查看>>
python&anconda系列(亲测有效):tensorflow AttributeError: ‘str’ object has no attribute ‘decode’
查看>>
python&anconda系列:tf.keras.backend.get_session()和keras.backend.get_会话()返回不同的会话对象(待解答)
查看>>
"WARNING: Increasing RAM size to 1GB" and "Cannot set up guest memory 'xxx.ram': Invalid argument".
查看>>
#if 0 #elif 1 #else #endif 用法
查看>>
#include <gdiplus.h>出错
查看>>
$ajax({}).done 和 $ajax({}) success 区别
查看>>
'ascii' codec can't encode characters in position 0-4: ordinal not in range(128)
查看>>
(反射+内省机制的运用)处理jdbc的结果集
查看>>
(反射+内省机制的运用)简单模拟spring IoC容器的操作
查看>>
#C8# UVM中的factory机制 #S8.2.3# 重载 component 哪些情形
查看>>
(转)SQLServer全局变量
查看>>
(转)tomcat7.0 manager app和host manager web管理
查看>>
(转)【英雄会即时报道】五大CTO畅谈软件公司如何招聘技术人才
查看>>
(转)使用公用表表达式的递归查询(SQLSERVER2005)
查看>>
(转)在CListView列表视图中添加右键菜单的方法
查看>>
(转)考虑错误情况
查看>>
++b&&a--运算结果解析
查看>>