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 相关文章推荐
简介Django框架中可使用的各类缓存
Jul 23 Python
Linux中Python 环境软件包安装步骤
Mar 31 Python
python 中split 和 strip的实例详解
Jul 12 Python
Python数据结构之单链表详解
Sep 12 Python
详解Python_shutil模块
Mar 15 Python
Python+PyQT5的子线程更新UI界面的实例
Jun 14 Python
Python3 文章标题关键字提取的例子
Aug 26 Python
Python对Excel按列值筛选并拆分表格到多个文件的代码
Nov 05 Python
python生成特定分布数的实例
Dec 05 Python
带你学习Python如何实现回归树模型
Jul 16 Python
python 中关于pycharm选择运行环境的问题
Oct 31 Python
python井字棋游戏实现人机对战
Apr 28 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
常见的PHP五种设计模式小结
2011/03/23 PHP
PHP面向对象之事务脚本模式(详解)
2017/06/07 PHP
PHP中递归的实现实例详解
2017/11/14 PHP
解决php扩展安装不生效问题
2019/10/25 PHP
PHP多进程简单实例小结
2019/11/09 PHP
JQuery Tips(4) 一些关于提高JQuery性能的Tips
2009/12/19 Javascript
JavaScript 处理Iframe自适应高度(同或不同域名下)
2013/03/29 Javascript
javascript中负数算术右移、逻辑右移的奥秘探索
2013/10/17 Javascript
js捕获鼠标滚轮事件代码
2013/12/16 Javascript
javascript函数定义的几种区别小结
2014/01/06 Javascript
基于javascript的JSON格式页面展示美化方法
2014/07/02 Javascript
JavaScript判断表单提交时哪个radio按钮被选中的方法
2015/03/21 Javascript
在Javascript操作JSON对象,增加 删除 修改的简单实现
2016/06/02 Javascript
JS 动态判断PC和手机浏览器实现代码
2016/09/21 Javascript
javascript函数中的3个高级技巧
2016/09/22 Javascript
Mongoose经常返回e11000 error的原因分析
2017/03/29 Javascript
微信小程序 检查接口状态实例详解
2017/06/23 Javascript
常用的9个JavaScript图表库详解
2017/12/19 Javascript
详解vue2.0+vue-video-player实现hls播放全过程
2018/03/02 Javascript
JS获取input[file]的值并显示在页面的实现方法
2018/03/09 Javascript
Element-UI+Vue模式使用总结
2020/01/02 Javascript
Python中字典和JSON互转操作实例
2015/01/19 Python
Python操作列表之List.insert()方法的使用
2015/05/20 Python
Python小游戏之300行代码实现俄罗斯方块
2019/01/04 Python
python爬虫请求头的使用
2020/12/01 Python
解决CSS3 transition-delay 属性默认值0不带单位失效的问题
2020/10/29 HTML / CSS
HTML5之WebGL 3D概述(上)—WebGL原生开发开启网页3D渲染新时代
2013/01/31 HTML / CSS
中国排名第一的外贸销售网站:LightInTheBox.com(兰亭集势)
2016/10/28 全球购物
健身场所或家用健身设备:Life Fitness
2017/11/01 全球购物
Linux内核的同步机制是什么?主要有哪几种内核锁
2016/07/11 面试题
车间班组长岗位职责
2013/11/13 职场文书
《忆江南》教学反思
2014/04/07 职场文书
公司介绍信范文
2015/01/31 职场文书
乌镇导游词
2015/02/02 职场文书
求职简历自我评价怎么写
2015/03/10 职场文书
推广普通话宣传标语口号
2015/12/26 职场文书