递归之斐波那契数列

在数学上,費波那契數列是以递归的方法來定义:

  • 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......

这个也是成一个指数增长的现象,所以兔子要是都按这个节奏生长,那就天天有肉吃了,还便宜!!!

这个问题相对与汉诺塔问题,较我而且,斐波那契数列一目了然,比较的好理解。

下面就用Ptyhon来实现一下:

def fib(x):
    assert type(x) == int and x >= 0
    if x == 0 or x == 1:
        return 1
    else:
        return fib(x-1) + fib(x-2)

只能说Python几行代码搞定。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值