斐波那契数列

本篇文章资料:
       百度百科
       维基百科
      若干篇文章博客,感谢
斐波那契数列在数学和生活以及自然界中都非常有用
 
费波那契数列的来源与定义
        费波那契数列(意大利语:Successione di Fibonacci),又译为费波拿契数、斐波那契数列、费氏数列、黄金分割数列。
        因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34......
        列昂那多·斐波那契于1202年研究兔子产崽问题时发现了此数列。
//设一对大兔子每月生一对小兔子,每对新生兔在出生一个月后又下崽,假若兔子都不死亡。
//问:一对兔子一年能繁殖成多少对兔子?

题中本质上有两类兔子:一类是能生殖的兔子,为大兔子;新生的兔子不能生殖,为小兔子;小兔子一个月就长成大兔子,求的是大兔子与小兔子的总和?

/**
十二月时有大兔子144对,小兔子89对,共有兔子144+89=233对
从上表看出:
  ①每月小兔对数=上月大兔对数
  ②每月大兔对数等于上个月大兔对数与小兔对数之
综合①②两点可得:每月大兔对数等于前两个月大兔对数之和  
如果用un表示第n月的大兔对数,则有un=un-1+un-2(n > 2)
  每月大兔对数un排成数列为:1、1、2、3、5、8、13、21、34、55、89、144…

  那么此组数列就称为斐波那契数列

*/

 

在数学上,费波那契数列是以递归的方法来定义:
  • F_{0}=0
  • F_{1}=1
  • F_{n}=F_{​{n-1}}+F_{​{n-2}}(n≧2)
用文字来说,就是费波那契数列由0和1开始,之后的费波那契系数就是由之前的两数相加而得出。
首几个费波那契系数是:
        0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233……
        特别指出:0不是第一项,而是第零项。

 

计算机中的实现
python版

 

import sys
def fibonacci(n):   # 生成器函数 - 斐波那契
    a, b, counter = 0, 1, 0
    while True:
        if counter > n:
            return
        yield a
        a, b = b, a + b
        counter += 1


f = fibonacci(10)   # f 是一个迭代器,由生成器返回生成

while True:
    try:
        print(next(f), end=" ")
    except StopIteration:
        sys.exit()
JavaScript版
function fib(n) {
    var fib_n = function(curr, next, n) {
        console.log(curr);
        if (n == 0) {
            return curr;
        }
        else {
            return fib_n(next, curr+next, n-1);
        }
    }
    return fib_n(0, 1, n);
}
fib(10);

Java版

    public static int fibonacci(int n) {
        return excute(0, 1, n);
    }
    
    public static int excute(int current, int next, int n) {
        System.out.println(current);
        if (n == 0) 
            return current;
        else 
            return excute(next, next + current, n-1 );
    }
    
    public static void main(String[] args) {
        fibonacci(10);
    }

 

 生活中的意义

 

生活中的斐波那契数列
  斐波那契数列中的斐波那契数会经常出现在我们的眼前——比如松果、凤梨、树叶的排列、一些花朵的花瓣数(典型的有向日葵花瓣),蜂巢,蜻蜓翅膀,黄金矩形、黄金分割、等角螺线,十二平均律等。
  斐波那契数与植物花瓣:
  3————————兰花、百合花、茉莉花
  5————————蓝花耧斗菜、金凤花、飞燕草、毛茛花
  8————————翠雀花
  13————————金盏和玫瑰
  21————————紫宛
  34、55、89————雏菊
黄金分割
  随着数列项数的增加,前一项与后一项之比越来越逼近黄金分割的数值0.6180339887…
算了,本来是学python的时候看到一个实现斐波那契数列的demo,没想到研究了半下午的数学
至于斐波那契数列的作用我就不多说了,总之是非常非常的广,生物,艺术,金融......

 

 公众号:

转载于:https://www.cnblogs.com/dougest/p/9018178.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值