日期 | 是否一次通过 | comment |
---|---|---|
2019-01-27 20:20 | N | 对尾递归理解不够透彻,尾递归返回条件始终是 target == 1
|
题目:一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
1. 尾递归
public class Solution {
public int JumpFloor(int target) {
return helper(target, 1, 2) ;
}
private int helper(int target, int num1, int num2) {
if(target == 1) { // 好像尾递归,斐波那契数列的返回条件都是 == 1
return num1;
}
return helper(target-1, num2, num1+num2);
}
}
网友评论