递归和非递归方法实现斐波那契数列
2016-04-13 11:32
615 查看
介绍
斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(LeonardodaFibonacci[1] )以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、……在数学上,斐波纳契数列以如下被以递归的方法定义:F(0)=0,F(1)=1,F(n)=F(n-1)+F(n-2)(n≥2,n∈N*)。看了百度前端面试题,用递归和非递归形式写斐波那契数列。这里用Python写了一下。
代码
#递归形式,返回斐波那契数列的第n+1个数 def fib(n): if n <= 1: return n return fib(n-2)+fib(n-1) fib = [fib(i) for i in range(10)] print(fib) #非递归形式,返回最大数小于n的斐波那契数列 def fib1(n): res = [] num1 = 0 num2 = 1 while num1 < n: res.append(num1) num1,num2 = num2,num1 + num2 return res print(fib1(10))
相关文章推荐
- 如何实现掩码位图的透明显示
- 在ubuntu上安装并运行NATS Server -- gnastd:未找到命令
- 如何计算IOPS ?
- Redis keys 基本命令
- Android开发之获取SD卡及手机ROM容量的方法
- 【View】之【SimpleWaveView】可多色可刷新的加速球、进度球【demo】
- 各种队列的执行效果
- dispatch_once
- 最简单的视音频播放示例6:OpenGL播放YUV420P(通过Texture,使用Shader)
- 总结下最近收集的一些比较好的网址
- 0007《SQL必知必会》笔记03-汇总与分组数据
- [bug]The file ‘/xxx/xxx.aspx’ has not been pre-compiled, and cannot be requested
- rabbitmq 连接測试
- bzoj 4522: [Cqoi2016]密钥破解
- What is CyclicBarrier in Java
- 磁盘IOPS计算
- debian下python flask环境搭建
- 修改oracle字符集
- Sql Server 2008 R2数据库损坏修复成功案例
- controller aop