斐波那契数又叫兔子数列,跳台阶序列。

斐波那契数又叫兔子数列,跳台阶序列。
1, 1, 2, 3, 5, 8, 13, 21, 34……
特点是前两项之和等于后一项.
算法问题无非两大步:
第一步:理解问题,想明白怎么回事。
第二步:代码实现

第一步:
比如台阶问题,一次可以跳上1级台阶,也可以跳上2级。求跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
假设现在6个台阶,我们可以从第5级台阶跳一步到6,另外我们也可以从4级台阶跳两步跳到6,就这两种途径,没有其他跳法了,因为题目规定一次只能跳上1级台阶或2 级台阶。
假设跳到第5级台阶有f(5)种跳法,那么走这条路径跳到第6级台阶一定有f(5)种跳法,最后一步是跳1级嘛。不是f(5)+1啊,跳到第6级台阶才算一种跳法。就是说有多少种路径跳到5就一定有多少种路径跳到6,就是在跳到5的每个路径最后再多跳一步就是跳到6的路径。
但是还没完,跳到6还有另一种路径,还可能是从第4级台阶跳过去的,即最后是跳2步到达的,就是说有多少种路径跳到4就一定有多少种路径跳到6,就是在跳到4的每个路径最后再加跳两步就是跳到6的路径。
这样的话f(6)=f(4)+(5),
第二步:
斐波那契数又叫兔子数列,跳台阶序列。