首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >变态跳台阶

变态跳台阶

作者头像
用户3003813
发布2018-09-06 13:23:41
发布2018-09-06 13:23:41
5090
举报
文章被收录于专栏:个人分享个人分享

一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。

因为n级台阶,第一步有n种跳法:跳1级、跳2级、到跳n级 跳1级,剩下n-1级,则剩下跳法是f(n-1) 跳2级,剩下n-2级,则剩下跳法是f(n-2) 所以f(n)=f(n-1)+f(n-2)+...+f(1) 因为f(n-1)=f(n-2)+f(n-3)+...+f(1) 所以f(n)=2*f(n-1)

如果target = 0,说明是直接跳过来,否则返回1;否则,总是有target中选择,把每种选择包含的步骤起来就行了,递归到0结束循环,并合并结果。

代码语言:javascript
复制
 public int JumpFloorII(int target) {
        if(target == 0 ){
      return 1;
     }
     int count = 0
     for(int i = 1; i<target;i++){
        count += jumpFloorII(target - i);
     }
      return count;
     }

    }
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2015-11-09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档