题目:

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

分析:

其实和普通的只能跳一个和两个台阶的思路是一样的,都是为了求迭代表达式。

普通跳台阶(只能跳1或2):

假设我第一次跳1个,那么剩下的次数就是f(n-1)

假设我第一次跳2个,那么剩下的次数就是f(n-2)

所以f(n)=f(n-1)+f(n-2),然后再加上前两项的特殊项就可以得到通用表达式

变态跳台阶(可以跳1到n):

假设我第一次跳1个,那么剩下的次数就是f(n-1)

假设我第一次跳2个,那么剩下的次数就是f(n-2)

。。。。

假设我第一次跳n个,那么剩下的次数就是f(n-n)=f(0)

所以f(n)=f(n-1)+f(n-2)+。。。f(0)

然后f(n-1)=f(n-2)+f(n-3)+。。。f(0),它正好是上面表达式除了f(n-1)以外的式子

所以f(n)=2*f(n-1),然后再加上前两项特殊项就可以了

得到通式:

1       ,(n=0 )

f(n) =     1       ,(n=1 )

2*f(n-1),(n>=2)

代码:

public class Solution {public int JumpFloorII(int target) {if (target <= 0) {return -1;} else if (target == 1) {return 1;} else {return 2 * JumpFloorII(target - 1);}}
}

牛客网刷题java之变态跳台阶一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。相关推荐

  1. 牛客网刷题java之(斐波那契数列)一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。

    题目:一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果). 分析: 对于本题,前提只有 一次 1阶或者2阶的跳法. a.如果两种跳法, ...

  2. 牛客网刷题-java

    大部分解答为牛客网各位同学的精彩回答,本文只是选择一些互联网常考题目记录备忘. 1.一个类的构造器可以调用这个类中的其他构造器: this的作用其中一个就是在一个构造方法中调用另一个构造方法,格式为t ...

  3. 【牛客网刷题】中秋节前开启java专项练习错题总结第一天

    [牛客网刷题]中秋节前开启java专项练习错题总结第一天 概述 写在前面 错题分析 值得记录的错题 总结 写在最后 概述 还有十几天就到中秋节了,从此又老了一岁,也多了一年的知识积累.对于这样一个特殊 ...

  4. 牛客网刷题之SQL篇:非技术快速入门39T

    导航 前序 一.简单的关键字练习 1-10 二.知识点复习之 ==运算符== 1.算数运算符 2.比较运算符 3.逻辑运算符 4.位运算符 三.10-28T 0.简单题总结 1. SQL18 ==分组 ...

  5. 牛客网 刷题前的准备工作(输入 输出 如何接收?)

    牛客网 刷题前的准备工作 牛客网 刷题前的准备工作 1. 数据读取接受问题 2.牛客刷题前的准备: 2.1. 弄清楚输入输出的行数关系 3.代码怎么写 3.1. 在牛客上测试自己的模板代码,是否能正确 ...

  6. 牛客网刷题记录 || 结构体和类

    这是牛客网刷题记录专栏第五篇博文,先给大家简单介绍一下牛客网,牛客网是一个集笔面试系统.题库.课程教育.社群交流.招聘内推于一体的优质网站,牛客网题库中包含几万道题目,注重通过边学边练的模式揽获编程人 ...

  7. 牛客网刷题记录 || 循环

    这是牛客网刷题记录专栏第七篇博文,先给大家简单介绍一下牛客网,牛客网是一个集笔面试系统.题库.课程教育.社群交流.招聘内推于一体的优质网站,牛客网题库中包含几万道题目,注重通过边学边练的模式揽获编程人 ...

  8. 2023年大年初一 —— 牛客网刷题经验分享~

    2023年大年初一 -- 牛客网刷题经验分享~

  9. verilog牛客网刷题代码汇总

    verilog牛客网刷题代码汇总 作者:安静到无声 个人主页 作者简介:人工智能和硬件设计博士生.CSDN与阿里云开发者博客专家,多项比赛获奖者,发表SCI论文多篇. Thanks♪(・ω・)ノ 如果 ...

最新文章

  1. 虚幻引擎4:打造街机经典游戏学习教程 Unreal Engine 4: Create an Arcade Classic
  2. 使用 .NET WinForm 开发所见即所得的 IDE 开发环境,实现不写代码直接生成应用程序...
  3. 「深度」在水下机器人开疆扩土之时,避免沦为泡沫应成为全行业重点
  4. PIC单片机 电容式触摸检测
  5. 洛谷 - P1886 滑动窗口(单调队列/线段树)
  6. 基于Java+SpringBoot+vue+element实现火车订票平台管理系统
  7. 站在K2角度审视流程--任务的独占与释放
  8. BZOJ3653: 谈笑风生
  9. FullCalendar应用——整合农历节气和节日
  10. win7域用户生成临时文件夹
  11. Visual C++ 内存泄露检测工具(VLD)
  12. iTunes恢复备份时失败?3个常见原因
  13. 百度网盘突破下载限速
  14. ADA本月上涨100%,背后或有三个原因
  15. 时序分析 29 - 时序预测 - 格兰杰因果关系(下) python实践2
  16. AdMob(app内嵌广告)使用入门
  17. Android之仿微信发朋友圈图片选择功能
  18. ACM里的期望和概率问题 从入门到精(入)通(土)
  19. Vite resolve.alias
  20. 深入理解Android Crash 流程

热门文章

  1. Filecoin(FIL) 交易离线签名
  2. STM32H7 DAC2+BDMA
  3. python检测字符串是否包含特殊符号
  4. 计算机vb实验感想,vb课程设计心得体会范文(精选3篇)
  5. SpringBoot工程接入第三方支付渠道支付宝(C扫B支付)
  6. Kettle连接Mysql报错:Driver class org.gjt.mm.mysql.Driver could not be found
  7. Mac OS X 窗口操作快捷键
  8. 讯飞AIUI ubuntu linux使用
  9. [视觉Slam十四讲(2)踩坑记录]第3讲:Fatal error :Eigen/core没有那个文件或目录
  10. 我努力了十年,才让我的老婆不上班