1、问题描述
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
2、实现思路
由题目得知青蛙每次只能跳一个或两个台阶得到,当n=1的时候有一种方法,n=2的时候有俩种方法,n=3的时候有三种方法,n=4的时候有五种方法,以此类推最后得到
dp[n]=dp[n-1]+dp[n-2]
dp[1]=1
dp[2]=2
public static void main(String[] args) {
System.out.println(drump(10));
}
public static int drump(int n){
//当台阶小于2的时候结果就是n本身
if (n<=2){
return n;
}
//创建一个dp数组存放每个台阶的结果
int[] dp=new int[n+1];
//定义初始值
dp[1]=1;
dp[2]=2;
for (int i=3;i<=n;i++){
dp[i]=dp[i-1]+dp[i-2];
}
//放回结果
return dp[n];
}
1214

被折叠的 条评论
为什么被折叠?



