需求:

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

分析:

此题的突破口在台阶数;台阶数不一样,结果就不一样;由台阶数来找规律。

台阶数 跳法
1 1
2 2
3 4
4 8
5 16
6 32
...... ......

通过分析台阶数,可以看出当台阶数为n时,跳法数为前两个之和,设跳法数为函数f(n),则有:

f  ( n ) = 2 * f( n - 1 );

这是一个一个斐波那切数列,所以转化为求解斐波那切数列问题

实现代码:

import java.util.Scanner;public class Solution {public static int f(int n) {if(n<2){return n;}else{return 2*f(n-1);}}public static void main(String[] args) {System.out.println("请输入台阶数:");Scanner s=new Scanner(System.in);int n;n=s.nextInt();System.out.println("跳法数为:");System.out.println(f(n));}
}

分析:

首先,当位数为0时返回值为0;位数为1时返回1;因为他们是起始值;
然后,当位数为2时,其返回值 = 2 = 2*1;

当位数为3时,其返回值 = 4 = 2*2;

当位数为4时,其返回值 = 8 = 2*4;

当位数为5时,其返回值 =16=2*8;

......

所以由以上可得,大于等于3的情况下,当前位数的值

f  (n) = 2 * f(n - 1)。

输出示例为:

欢迎大家留言讨论!

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

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

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

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

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

  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级的台阶总共有多少种跳法(先后次序不同算不同的结果). 思路 解法一 ...

最新文章

  1. 高并发下的秒杀系统架构设计实战!
  2. 定义一维数组一定要指定个数吗_6.1 C语言一维数组
  3. 基于libzplay 实现window下音乐频谱动态显示
  4. 华为鸿蒙ai字幕,EMUI11一个值得吹爆的功能?AI字幕,支持翻译英日韩
  5. Maximum Balanced Circle
  6. 正式突破两千粉丝!开心!
  7. Java需要注意的一些小细节
  8. arm9重启ssh服务_部署ssh使用rsa登录配置
  9. Microsoft Visual Studio 2010 破解下载!
  10. Javascript中四种函数调用方式
  11. 关于服务限流的一些思考
  12. Linux之ssh-agent命令
  13. STC1_FULLSCREEN_TABLE_CONTROL
  14. xci转化nsp_Switch游戏XCI转NSP的教程+工具下载
  15. 时钟软件哪个好?9款苹果电脑时钟提醒软件推荐
  16. 散列(哈希)函数的python实现。
  17. 浅析AI边缘计算的车辆/车牌识别技术研发及场景应用
  18. Gson:GitHub 标星 18K 的 JSON 解析器,Google 出品的 Java JSON 解析器,强烈推荐!
  19. 通过fork来剖析Linux内核的内存管理和进程管理(下)
  20. 独家 | pyecharts V1.0.0 版本正式发布

热门文章

  1. Android Sendor框架介绍
  2. Win10 没有激活,如何改变任务栏位置
  3. linux连接校园网wifi,Linux/Ubuntu 16.04 使用校园网客户端Dr.com DrClient 有线连网,同时开启WiFi热点...
  4. 引入jq库,却不起效,底线解决方法
  5. Air Jordan 32 Performance Review
  6. 主内存和工作内存是什么?
  7. 到底还有没有月薪3万以下的程序员?程序员工资真的这么高!
  8. php教程7天速成,练字速成法一周写出一手漂亮的字!【7天练字速成】
  9. 经典的《Rework》
  10. 项目管理的九大知识领域