/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param number int整型 * @return int整型 */ int jumpFloor(int number ) { // write code here if(number==1||number==0){ return 1; }else{ return jumpFloor(number-1)+jumpFloor(number-2); } }
这一个跳台阶的问题,其实主要是读题问题,很多人在第一次看到这个题的时候,大多都不懂这道题的意思,首先我们要考虑如果是0或1阶的话,只需要跳一次就够,没有其他选择,一到了2阶的时候,就会发现有两种选择,一种是跳一阶,这就返回到之前说的一阶的情况了,但如果跳两阶,就直接能完成。然后就举例跳三阶,先跳一阶,就回到了跳两阶的情况,如果一开始跳两阶就回到了跳一阶的情况,也就是另一种斐波那契数列,如果有人不知道这个数列的,可以关注我,在我的主页中能找到这一个数列的解题技巧。