看到别人的讲解递归中的举的例子。说小青蛙每次跳有两种跳法:

第一种跳法:第一次跳了一个台阶,那么还剩下n-1个台阶还没跳,so 剩下的n-1个台阶的跳法有f(n-1)种

第二种跳法:第一次跳了两个台阶,那么还剩下n-2个台阶还没跳,so 剩下的n-2个台阶的跳法有f(n-2)种

所以,小青蛙的全部跳法就是这两种跳法之和了,即f(n)=f(n-1)+f(n-2)。等价关系就这样求出来了。

刚开始接触算法,看到这我就蒙蔽了,为什么是两种跳法之和呢?这是为什么,我脑子里的那根弦始终没搭对,为什么啊?

而且说这个题和斐波那契数列是一样的,虽然知道这个数列的特点,但我就是没有联想到这俩有什么关系?

网上搜了一下,看到有人说:“对于第n个台阶来说,只能从n-1或n-2的台阶跳上来”;其实,到这里,我还很疑惑。

我又搜了一圈,看了n个博主的文章,我突然间好像就懂了,以上那些说法是什么意思

比如:有6级台阶

那么,对于第6级台阶来说,有可能是从第4级台阶跳上来的,也有可能是从第5级台阶跳上来的,除此之外,没有其他方法了,所以,要相加,f(6)=f(6-1)+f(6-2)。

大胆一些,如果题目,变成小青蛙一次可以跳一个台阶,也可以跳三个台阶。那么我也大胆猜测,f(6)=f(6-1)+f(6-3)

public static int sumCount(int n){if(n<=2){return n;}return f(n-1)+f(n-2);
}

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

  1. [递归]一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。

    这题是用C写的~ 在牛客上半天找不着ACM模式,练习模式里只有核心代码模式 这样用C语言编译器就不能自定义函数啊,不鸡肋吗??? 解决方法:在核心代码模式下用C++编译器(反正C++完全兼容C的不是吗 ...

  2. 【python逻辑算法题】一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法

    文章目录 一.题目描述 二.问题分析 三.代码分析与逻辑(python3实现) 四.源码及运行结果 总结 提示:以下是本篇文章正文内容: 一.题目描述 题目:一只青蛙一次可以跳上1级台阶,也可以跳上2 ...

  3. c语言青蛙游戏,c语言:一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法?...

    一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法? 解:把n级台阶时的跳法记为f(n),当n>2时,第一次跳的时候有两种不同的选择:一是第一次只跳1级,此 ...

  4. 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法?(递归与动态规划)

    一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法? private static HashMap<Integer, Long> record = n ...

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

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

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

    题目: 一只青蛙一次可以跳上1级台阶,也可以跳上2级--它也可以跳上n级.求该青蛙跳上一个n级的台阶总共有多少种跳法. 分析: 其实和普通的只能跳一个和两个台阶的思路是一样的,都是为了求迭代表达式. ...

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

    import java.util.Scanner;/* 一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法.请用递归和循环2中方法实现答案来源:https://w ...

  8. 一只青蛙一次可以跳上1级台阶也可以跳上2级求该青蛙跳上一个n级的台阶总共有多少种跳法?

    一只青蛙一次可以跳上1级台阶也可以跳上2级求该青蛙跳上一个n级的台阶总共有多少种跳法? 解题思路 :每次跳1到n,那么如果是n阶台阶,一次就可能跳1~n阶(话说n=1000,青蛙腿肯定绑火箭了),乍一 ...

  9. (java)跳台阶:一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。

    文章目录 题目描述 思路 解法一:递归暴力破解 解法二: 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果). 思路 解法一 ...

  10. 变态跳台阶问题:一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法?

    编程题 一只青蛙一次可以跳上1级台阶,也可以跳上2级--它也可以跳上n级.求该青蛙跳上一个n级的台阶总共有多少种跳法? 分析 对于n级台阶,第一步的跳法有n种:跳1级.跳2级.跳3级-跳n级 跳1级, ...

最新文章

  1. tensorflow object detection API 使用记录2
  2. xshell中mysql命令大全_Linux之Xshell脚本代码实例
  3. 营销型网站优化攻略分享
  4. 回炉重造-基础规则之类和对象
  5. SparkSql常用命令操作
  6. BZOJ1823:[JSOI2010]满汉全席——题解
  7. 入门干货之Electron的.NET实现-Electron.NET
  8. 生存分析简介:Kaplan-Meier估计器
  9. Perl 第一章概述
  10. scrapy初始化selenium,防止网站反爬虫策略监测自动化控件
  11. SOA,RMI,RPC,SOAP,REST等名称的理解
  12. JAVA设计模式Design Pattern→单例模式Singleton Pattern、工厂模式Factory Pattern、代理模式Proxy Pattern
  13. SpringMVC Hello World
  14. 福禄克OTDR测试为什么要加补偿光纤?
  15. 嵌入式linux指纹识别项目,基于嵌入式应用平台的指纹识别系统设计
  16. 中心极限与大数定理律的关系_21厦大数学考研 | 数列与函数极限复习建议!
  17. linux 光纤网卡 软路由,联想M720Q、光网卡、Pon stick、Openwrt我的完美软路由折腾记...
  18. luoguP4578_ [FJOI2018]所罗门王的宝藏
  19. 生信自学笔记(五)计分矩阵的实例
  20. 三菱PLC控制步进驱动器脉冲定位相关(附代码接线图)

热门文章

  1. 思科路由器IOS备份和恢复
  2. Silicon单片机芯片解密
  3. 南京艺术学院计算机作曲,南京艺术学院932主科(上机操作计算机作曲应用)考研复习经验...
  4. 广告投放策略及数据分析
  5. jmeter的${__time(,)}和${__timeShift(,,,,)}函数使用
  6. 太阳能光伏发电和路灯应用系统的详细计算
  7. 2021-2027全球与中国3D产品可视化平台市场现状及未来发展趋势
  8. GNS3路由器设备间ping不通的排查方法
  9. Navicat Premium连接服务器数据库不成功的原因
  10. ESP8266深度睡眠计时器唤醒