变态跳台阶算法详解编程语言

题目描述

一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
解:这题一看就是要用个数学方法,没想出来。看了答案后发现有个极简单方法
每个台阶都有跳与不跳两种情况(除了最后一个台阶),最后一个台阶必须跳。所以共用2^(n-1)中情况
而且用位移更简单
class Solution { 
public: 
    int jumpFloorII(int number) { 
        int i=1; 
        return i<<(number-1); 
    } 
};

 

 

原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/17547.html

(0)
上一篇 2021年7月19日 20:18
下一篇 2021年7月19日 20:18

相关推荐

发表回复

登录后才能评论