C语言青蛙跳台阶扩展
- 思路: 考虑跳n级台阶,可以从(n-1)跳一层、(n-2)跳两层、(n-3)跳3层、、、(n-n)跳n层上来,所以dp[n]=dp[n-1]+dp[n-2]+...+dp[0] 同样的 dp[n+1]=dp[n]+dp[n-1]+dp[n-2]+...+dp[0] = 2*dp[n],实际上是求2^(n-1)的问题,直接使用移位运算 2<<(number-1)
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param number int整型
* @return int整型
*
* C语言声明定义全局变量请加上static,防止重复定义
*/
int jumpFloorII(int number ) {
// write code here
return 1<<(number-1);
}