青蛙跳台阶问题

问题:一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶。求该青蛙跳上一个 n 级的台阶总共有多少种跳法。

分析:到达n层的方法数目 = 到达n-1层的方法数 + 最后一次跳1层 或者到达 n-2层的方法数 + 最后一次跳2层。即 f(n) = f(n-1) + f(n-2)

f(1) = 1
f(2) = 2
f(3) = 3

 

代码中f(0) = 1只是我向它测试用例妥协,并不代表我认为f(0) =1.

运行结果截图如下:

上述是使用非递归,利用result = 前一项 + 当前项,进行for循环的遍历得到结果。也可以使用递归。

 

posted @ 2021-03-21 23:07  why_not_try  阅读(43)  评论(0编辑  收藏  举报