Python3爬楼梯算法示例


Posted in Python onMarch 04, 2019

本文实例讲述了Python3爬楼梯算法。分享给大家供大家参考,具体如下:

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

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

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

方案一:每一步都是前两步和前一步的和

class Solution(object):
  def climbStairs(self, n):
    """
    :type n: int
    :rtype: int
    """
    pre, cur = 1, 1
    for i in range(1,n):
      pre,cur = cur,pre+cur
    return cur
#测试
tmp = Solution()
print(tmp.climbStairs(10))

运行结果:

89

方案二:用列表记录每个n对应的值,最后的n取最后一个值即可

class Solution(object):
  def climbStairs(self, n):
    """
    :type n: int
    :rtype: int
    """
    if n == 1:
      return 1
    if n == 2:
      return 2
    res = [1, 2]
    for i in range(2, n):
      res.append(res[i - 1] + res[i - 2])
    return res[-1]
#测试
tmp = Solution()
print(tmp.climbStairs(10))

运行结果:

89

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python实现的简单窗口倒计时界面实例
May 05 Python
Python实现大文件排序的方法
Jul 10 Python
python搭建虚拟环境的步骤详解
Sep 27 Python
关于Python元祖,列表,字典,集合的比较
Jan 06 Python
Python实现excel转sqlite的方法
Jul 17 Python
python flask框架实现重定向功能示例
Jul 02 Python
使用APScheduler3.0.1 实现定时任务的方法
Jul 22 Python
Flask之pipenv虚拟环境的实现
Nov 26 Python
python爬虫开发之Request模块从安装到详细使用方法与实例全解
Mar 09 Python
Python  word实现读取及导出代码解析
Jul 09 Python
python装饰器代码深入讲解
Mar 01 Python
python元组打包和解包过程详解
Aug 02 Python
Python3最长回文子串算法示例
Mar 04 #Python
Python地图绘制实操详解
Mar 04 #Python
Python基于opencv实现的简单画板功能示例
Mar 04 #Python
python绘制漏斗图步骤详解
Mar 04 #Python
详解Python字典的操作
Mar 04 #Python
Python提取频域特征知识点浅析
Mar 04 #Python
python快排算法详解
Mar 04 #Python
You might like
JAVA/JSP学习系列之六
2006/10/09 PHP
ThinkPHP分组下自定义标签库实例
2014/11/01 PHP
PHP数据库连接mysql与mysqli对比分析
2016/01/04 PHP
Yii框架日志记录Logging操作示例
2018/07/12 PHP
laravel 时间格式转时间戳的例子
2019/10/11 PHP
js生成随机数之random函数随机示例
2013/12/20 Javascript
jsp网页搜索结果中实现选中一行使其高亮
2014/02/17 Javascript
使用js画图之画切线
2015/01/12 Javascript
JS简单计算器实例
2015/01/20 Javascript
JavaScript数据类型判定的总结笔记
2015/07/31 Javascript
JavaScript继承学习笔记【新手必看】
2016/05/10 Javascript
JS 日期与时间戮相互转化的简单实例
2016/06/22 Javascript
JS实现根据文件字节数返回文件大小的方法
2016/08/02 Javascript
使用BootStrap实现用户登录界面UI
2016/08/10 Javascript
JavaScript仿微博输入框效果(案例分析)
2016/12/06 Javascript
微信小程序 slider 详解及实例代码
2017/01/10 Javascript
Mongoose学习全面理解(推荐)
2017/01/21 Javascript
详解nodejs通过代理(proxy)发送http请求(request)
2017/09/22 NodeJs
Vue组件通信的四种方式汇总
2018/02/08 Javascript
vue修改对象的属性值后页面不重新渲染的实例
2018/08/09 Javascript
微信小程序-可移动菜单的实现过程详解
2019/06/24 Javascript
js利用递归与promise 按顺序请求数据的方法
2019/08/30 Javascript
解决vant框架做H5时踩过的坑(下拉刷新、上拉加载等)
2020/11/11 Javascript
[42:52]Optic vs Serenity 2018国际邀请赛淘汰赛BO3 第二场 8.22
2018/08/23 DOTA
python使用RNN实现文本分类
2018/05/24 Python
Python小进度条显示代码
2019/03/05 Python
如何使用Python实现自动化水军评论
2019/06/26 Python
如何避免常见的6种HTML5错误用法
2017/11/06 HTML / CSS
AmazeUI 模态窗口的实现代码
2020/08/18 HTML / CSS
高三自我鉴定
2013/10/23 职场文书
设计大赛策划方案
2014/06/13 职场文书
学生安全责任书范本
2014/07/24 职场文书
社区文艺活动方案
2014/08/19 职场文书
医务人员医德考评自我评价
2015/03/03 职场文书
小学安全工作总结2015
2015/05/18 职场文书
制作能在nginx和IIS中使用的ssl证书
2021/06/21 Servers