在数学上,費波那契數列是以递归的方法來定义:
- (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几行代码搞定。