题解 | #跳台阶扩展问题#

跳台阶扩展问题

http://www.nowcoder.com/practice/22243d016f6b47f2a6928b4313c85387

C语言青蛙跳台阶扩展

  1. 思路: 考虑跳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);
}
全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务