算法练习----青蛙跳台阶
题目:
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
解题思路:
看过有网上有特解的方法,但是我感觉不合适,因为想解法应该是找到普遍的规律才应该算是中规中矩。当不知道解题思路的就可以先将前几次,比如说有 1,2,3,4,5级台阶的跳法算出来,比较简单还是可以手算的,就应该发现规律了。
通过前面的跳法数,可以发现规律,f(n) = f(n-1) + f(n-2)
解题代码:
int Solution::jumpFloor(int number) { int result; if (number == 1) { return 1; } if (number == 2) { return 2; } result = jumpFloor(number - 1) + jumpFloor(number - 2); return result; }