题目:有一个n级的楼梯,每次可以迈一步或者迈两步,那么上这个楼梯有多少种不同的方法?如2级的楼梯,可以迈两次一步,也可以迈一次两步,共有两种方法。
思路1:很容易就想到使用递归去求解。边界条件为楼梯1级时,共有一种方法,楼梯2级时,共有两种方法。
publicstaticlong dfs(longl) {
if(l==1)
return 1;
if(l==2)
return 2;
return dfs(l-1)+dfs(l-2);
}
题目:有一个n级的楼梯,每次可以迈一步或者迈两步,那么上这个楼梯有多少种不同的方法?如2级的楼梯,可以迈两次一步,也可以迈一次两步,共有两种方法。
思路1:很容易就想到使用递归去求解。边界条件为楼梯1级时,共有一种方法,楼梯2级时,共有两种方法。
publicstaticlong dfs(longl) {
if(l==1)
return 1;
if(l==2)
return 2;
return dfs(l-1)+dfs(l-2);
}