题目:一个台阶总共有n级,如果一次可以跳1级,也可以跳2级。求总共有多少总跳法,并分析算法的时间复杂度。
解法一:就是一个Fibonacci数列的问题。
1. f(1) = 1; 只有一阶台阶的时候,只有一种跳法
2. f(2) = 2; 有两节台阶的时候,有两种跳法。
3. f(n) = f(n-1) + f(n-2)。
这个和之前的“10枪打90环”问题类似,那个问题只不过是Fibonacci数列的一个扩大。
题目:一个台阶总共有n级,如果一次可以跳1级,也可以跳2级。求总共有多少总跳法,并分析算法的时间复杂度。
解法一:就是一个Fibonacci数列的问题。
1. f(1) = 1; 只有一阶台阶的时候,只有一种跳法
2. f(2) = 2; 有两节台阶的时候,有两种跳法。
3. f(n) = f(n-1) + f(n-2)。
这个和之前的“10枪打90环”问题类似,那个问题只不过是Fibonacci数列的一个扩大。