jingxinwu.net
当前位置:首页>>关于兔子数列python编程的资料>>

兔子数列python编程

斐波那契数列非常pythonic的写法是:# -*- coding:utf-8 -*- def fibs(num): a=b=1 for i in range(num): yield a a,b=b,a+b print list(fibs(10))

##缩进格式看图l=[1,1]for i in range(28): l.append(l[-2]+l[-1])print(l)

分析过程为:兔子的规律为数列1,1,2,3,5,8,13,21.程序源代码:实例(Python 2.0+)#!/usr/bin/python# -*- coding: UTF-8 -*-f1 = 1f2 = 1for i in range(1,22):print '%12ld %12ld' % (f1,f2),if (i % 3) == 0:print ''f1 = f1 + f2f2 = f1 + f2以上实例输出结果为

斐波那契数列指的是这样一个数列 0, 1, 1, 2, 3, 5, 8, 13,特别指出:第0项是0,第1项是第一个1.从第三项开始,每一项都等于前两项之和.Python 实现斐波那契数列代码如下:# -*- coding: UTF-8 -*-# Filename : test.py# author by : www.

定义:斐波那契数列(Fibonacci sequence),又称黄金分割数列,指的是这样一个数列: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*) 方法一

计算斐波那契来数列自的核心就是循环2113进行a,b=b,a+b如此循环计算,直到5261b的值大4102于n,然后输出1653a与b即可.n=int(input('input "n":'))a, b = 1, 1while b<=n:.a, b = b, a+bprint('{} {}'.format(a, b))

def Fibonacci (stop_number):a=[1,1] i=0 while i<stop_number:a.append(a[-1]+a[-2]) i=i+1 return(a)

普通算法输出斐波那契数列第700项需要花很长的时间,因为递归多次嵌套算法复杂度非常高.所以这里用动态规划优化了一下,用到了python的字典功能.程序如下:def FastFib(n, memo): if not n in memo: memo[n] = FastFib(n - 1, memo) +

def Fibonacci(n): f0=0 f1=1 s=[] s.append(f0) s.append(f1) for i in range(1,n+1): s.append(s[i-1]+s[i]) return s[n]

斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波纳契数列以如下被以递归的方法定义:F(1)=1,F(2)=1, F(n)=F(n-1)+F(n-2)(n>=2,n∈N*)

网站首页 | 网站地图
All rights reserved Powered by www.jingxinwu.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com