当只有一个台阶时,青蛙它别无选择,它只需要跳一步就可以了; 当存在两个台阶时,青蛙此时就会有两种方法。 第一种就是,当青蛙选择一开始先跳一步时,那么两个台阶就只剩下一个台阶要跳了,那还能怎么办,继续跳就完事了。 第二种就是,青蛙选择一次跳两步,两个台阶就被跳完了。 当存在三个台阶时,青蛙此时就...
代码语言:javascript 复制 青蛙跳台阶问题 汉诺塔问题 这两个都是很著名的需要用递归来解决的问题,这里我们解决一下青蛙跳台阶问题,当然你也可以了解一下汉诺塔问题。 青蛙跳台阶 题干:青蛙一次能跳1或2级台阶,问青蛙跳上n级台阶有几种跳法? 青蛙跳台阶1 那么对于这个问题,我们可以逆向来分析。 我们可以先计算青...
一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶,也可以跳上3级台阶。求该青蛙跳上一个n级的台阶总共有多上种跳法。 思路分析 首先,当N=1时,那么青蛙就有一种跳法。 当N=2时,青蛙可以跳两次一层台阶也可以跳一次二层台阶,有两种跳法 当N=3时,当青蛙首先跳一次一层台阶时,那么还需要跳两层台阶,那它...
青蛙跳台阶问题是指:一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 2.问题分析 假设跳上一个n-1级的台阶有x种跳法,跳上一个n-2级的台阶有y种跳法,那么跳上一个n级的台阶总共有x+y种跳法,因为可能性只有两种: 先完成跳到第n-1级台阶这件事,再跳上1...
简介:C语言实现青蛙跳台阶问题 前言 青蛙跳台阶是一个非常经典的递归问题,其具体问题是: 一只青蛙想要跳上一个台阶,这个台阶一共有n级,青蛙一次可以选择跳1级台阶或者跳2级台阶,那么青蛙一共有多少种方法可以跳上台阶呢? 一、问题分析 1.当台阶只有1级时 ...
一、问题呈现 1.问题描述 Problem Description 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n 级的台阶总共有多少种跳法。 提示:本题可联系斐波那契数列问题的解法加以理解。 附:斐波那契解法 2.输入输出 Input 输入青蛙要跳的级(台阶)数n ...
青蛙跳上第一个台阶只有一种跳法:1 跳上第二个台阶有两种跳法:1+1,2 缕清逻辑后,接下来开始写代码 #include<stdio.h> //青蛙跳台阶问题 int Forg(int n) { if(n<=2) return n; else return Forg(n-1)+Forg(n-2); } 在第一种方法中,是通过递归解决问题,但是这样会造成大量重复的运算,效率很...
C语言使用递归解决青蛙跳台阶问题 /* //青蛙跳台阶问题---一只青蛙一次可以跳一级台阶 也可以跳两级 如果青蛙跳上n级台阶 有几种跳法 // n级台阶 跳法 // 1 1 // 2 2 // 3 3 // 4 5 // 5 8 int Qingwa(int n) { if(n<=2)
今天来给大家分享一下关于青蛙跳台阶拓展问题我自己的思路,由于我还是初学C语言,所以我自己的思路一开始没有那么清晰,所以大家仅供参考,思路和代码都有些复杂. 先来看看题目: 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级,那么请问青蛙跳n个台阶的时候可以有多少种方式?
另一个经典的递归问题就是青蛙跳台阶问题。一只青蛙一次可以跳两个台阶,如果有n个台阶,有多少种跳法?这个问题可以通过递归函数来解决。基本思路是每次可以选择跳两个台阶或者不跳,然后剩下的台阶再按照同样的方式处理。这样,问题就变成了如何在n-1个台阶上跳到目标柱C。