这题一开始我是懵逼的,因为要考虑的情况太多了,也是看了评论的思路才明白,但是这个题目也是按照斐波那契数列的思路,只不过递归的公式需要改变一下。
f(1)=1;
f(2)=f(1)+1; //当n为2时,就是n为1时再跳一级台阶,以及直接跳两级台阶这两种情况
f(3)=f(1)+2+f(2)+1//n为3时,从1级台阶出发,跳两级有两种情况,从二级台阶出发,有1种情况,以及直接跳3级台阶
可以进一步进行找规律,从一级台阶出发,还有两级台阶,那么这两级台阶的需要考虑的情况种类其实就是f(2)。从二级台阶出发,剩余1级台阶情况就是f(1)
f(3)=f(1)+f(2)+f(2)+f(1)=2[f(1)+f(2)]
//可以进一步推出递归的公式,f(n)=2f(n-1);
剑指-变态跳台阶
最新推荐文章于 2020-05-11 21:21:50 发布