Python走楼梯问题解决方法示例


Posted in Python onJuly 25, 2018

本文实例讲述了Python走楼梯问题解决方法。分享给大家供大家参考,具体如下:

# -*- coding:utf-8 -*-
#!python3
'''
下楼问题。从楼上走到楼下共有h个台阶,每一步有两种走法:
走1个台阶,走2个台阶,问有多少可走的方案。用递归思想和迭代思想编程
'''
'''
分析:问题可以从最后一次是走1步还是两步,反向考虑
'''
def take_stairs_recursive(n):
  if n == 1:
    return 1
  elif n == 2:
    return 2
  else:
    return take_stairs_recursive(n-1)+take_stairs_recursive(n-2)
'''
其实就是斐波那契数列
'''
def take_stairs(n):
  if n == 1:
    return 1
  if n == 2:
    return 2
  a,b = 1,2
  result = 0
  for i in range(3,n+1):
    result = a + b
    a = b
    b = result
  return result
print(take_stairs_recursive(10))
print(take_stairs(10))

运行结果:

89
89

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

Python 相关文章推荐
跟老齐学Python之眼花缭乱的运算符
Sep 14 Python
用Python实现一个简单的能够发送带附件的邮件程序的教程
Apr 08 Python
Python实现查找匹配项作处理后再替换回去的方法
Jun 10 Python
python实现对求解最长回文子串的动态规划算法
Jun 02 Python
python实现转圈打印矩阵
Mar 02 Python
如何使用Python实现自动化水军评论
Jun 26 Python
在pytorch中对非叶节点的变量计算梯度实例
Jan 10 Python
K最近邻算法(KNN)---sklearn+python实现方式
Feb 24 Python
Python sql注入 过滤字符串的非法字符实例
Apr 03 Python
Python json格式化打印实现过程解析
Jul 21 Python
pandas参数设置的实用小技巧
Aug 23 Python
PyCharm 2020.1版安装破解注册码永久激活(激活到2089年)
Sep 24 Python
python 批量修改/替换数据的实例
Jul 25 #Python
django 实现电子支付功能的示例代码
Jul 25 #Python
python 去除txt文本中的空格、数字、特定字母等方法
Jul 24 #Python
Python将文本去空格并保存到txt文件中的实例
Jul 24 #Python
python批量修改图片大小的方法
Jul 24 #Python
python 自动去除空行的实例
Jul 24 #Python
python读取图片并修改格式与大小的方法
Jul 24 #Python
You might like
非常有用的9个PHP代码片段
2016/04/06 PHP
joomla实现注册用户添加新字段的方法
2016/05/05 PHP
PHP使用curl_multi实现并发请求的方法示例
2018/04/29 PHP
PHP常用函数之根据生日计算年龄功能示例
2019/10/21 PHP
DB.ASP 用Javascript写ASP很灵活很好用很easy
2011/07/31 Javascript
ie下动态加态js文件的方法
2011/09/13 Javascript
编写简单的jQuery提示插件
2014/12/21 Javascript
使用jQuery+EasyUI实现CheckBoxTree的级联选中特效
2015/12/06 Javascript
剖析Node.js异步编程中的回调与代码设计模式
2016/02/16 Javascript
JavaScript中Object.prototype.toString方法的原理
2016/02/24 Javascript
Angularjs在初始化未完毕时出现闪烁问题的解决方法分析
2016/08/05 Javascript
手机端实现Bootstrap简单图片轮播效果
2016/10/13 Javascript
原生js实现电商侧边导航效果
2017/01/19 Javascript
vue分类筛选filter方法简单实例
2017/03/30 Javascript
浅谈node模块与npm包管理工具
2018/01/03 Javascript
vue实现选项卡及选项卡切换效果
2018/04/24 Javascript
JavaScript生成指定范围随机数和随机序列的方法
2018/05/05 Javascript
JavaScript中构造函数与原型链之间的关系详解
2019/02/25 Javascript
jQuery实现动态添加和删除input框代码实例
2019/03/29 jQuery
vue-cli配置全局sass、less变量的方法
2019/06/06 Javascript
js使用文件流下载csv文件的实现方法
2019/07/15 Javascript
Vue+Bootstrap收藏(点赞)功能逻辑与具体实现
2020/10/22 Javascript
[03:14]2014DOTA2西雅图国际邀请赛 EG战队巡礼
2014/07/07 DOTA
Python中eval带来的潜在风险代码分析
2017/12/11 Python
Python实现全排列的打印
2018/08/18 Python
python单例模式原理与创建方法实例分析
2019/10/26 Python
python3实现网页版raspberry pi(树莓派)小车控制
2020/02/12 Python
Python count函数使用方法实例解析
2020/03/23 Python
Python Flask异步发送邮件实现方法解析
2020/08/01 Python
Python3爬虫RedisDump的安装步骤
2021/02/20 Python
解除劳动合同协议书范本
2014/09/13 职场文书
公司合作协议范文
2014/10/01 职场文书
购房个人委托书范本
2014/10/11 职场文书
村官个人总结范文
2015/03/03 职场文书
Python中seaborn库之countplot的数据可视化使用
2021/06/11 Python
Python用tkinter实现自定义记事本的方法详解
2022/03/31 Python