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爬虫之HTTP异常处理
Nov 05 Python
详解Python中的文本处理
Apr 11 Python
Python实现向服务器请求压缩数据及解压缩数据的方法示例
Jun 09 Python
python把数组中的数字每行打印3个并保存在文档中的方法
Jul 17 Python
python Selenium实现付费音乐批量下载的实现方法
Jan 24 Python
对python使用telnet实现弱密码登录的方法详解
Jan 26 Python
python3使用print打印带颜色的字符串代码实例
Aug 22 Python
Spring Boot中使用IntelliJ IDEA插件EasyCode一键生成代码详细方法
Mar 20 Python
Python ini文件常用操作方法解析
Apr 26 Python
Django通过json格式收集主机信息
May 29 Python
python mock测试的示例
Oct 19 Python
python 爬虫网页登陆的简单实现
Nov 30 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
ThinkPHP使用PHPExcel实现Excel数据导入导出完整实例
2014/07/22 PHP
PHP实现无限极分类图文教程
2014/11/25 PHP
php发送短信验证码完成注册功能
2015/11/24 PHP
利用PHP如何写APP接口详解
2016/08/23 PHP
jQuery EasyUI API 中文文档 可调整尺寸
2011/09/29 Javascript
关于eval 与new Function 到底该选哪个?
2013/04/17 Javascript
JS中实现简单Formatter函数示例代码
2014/08/19 Javascript
node.js中的buffer.write方法使用说明
2014/12/10 Javascript
ECMAScript 5严格模式(Strict Mode)介绍
2015/03/02 Javascript
js正则表达式replace替换变量方法
2016/05/21 Javascript
分享一个插件实现水珠自动下落效果
2016/06/01 Javascript
Js得到radiobuttonlist选中值的两种方法(推荐)
2016/08/25 Javascript
easyUI combobox实现联动效果
2017/01/17 Javascript
jquery实现图片放大点击切换
2017/06/06 jQuery
原生js二级联动效果
2017/06/20 Javascript
基于es6三点运算符的使用方法(实例讲解)
2017/10/12 Javascript
微信小程序如何获取用户信息
2018/01/26 Javascript
vue elementUI table表格数据 滚动懒加载的实现方法
2019/04/04 Javascript
各种Python库安装包下载地址与安装过程详细介绍(Windows版)
2016/11/02 Python
python 日期操作类代码
2018/05/05 Python
Django读取Mysql数据并显示在前端的实例
2018/05/27 Python
Python实现的knn算法示例
2018/06/14 Python
Django 创建/删除用户的示例代码
2019/07/24 Python
python怎么提高计算速度
2020/06/11 Python
详解三种方式实现平滑滚动页面到顶部的功能
2019/04/23 HTML / CSS
英国著名的药妆网站:Escentual
2016/07/29 全球购物
Nike澳大利亚官网:Nike.com (AU)
2019/06/03 全球购物
Final类有什么特点
2012/04/25 面试题
中华美德颂演讲稿
2014/05/20 职场文书
医院党员公开承诺书
2014/08/30 职场文书
乡镇组织委员个人整改措施
2014/09/16 职场文书
旷课检讨书
2015/01/26 职场文书
财务会计岗位职责
2015/02/03 职场文书
企业廉洁教育心得体会
2016/01/20 职场文书
Python进度条的使用
2021/05/17 Python
python 爬取哔哩哔哩up主信息和投稿视频
2021/06/07 Python