}// 青蛙跳台阶:// 递归、带备忘录的递归、动态规划// **1.递归**// public int numWays(int n) {// if(n==0) return 1;// if(n==1) return 1;// if(n==2) return 2;// return numWays(n-1)+numWays(n-2);// }//**2. 带备忘的递归(减少了递归过程中的重复操作)**// HashM...
题目1:一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 将跳法总数记为f(n),可以知道f(1)=1,f(2)=2。当n>2时,第一次跳1级的话,还有f(n-1)种跳法;第一次跳2级的话,还有f(n-2)种跳法,所以可以推得f(n)=f(n-1)+f(n-2),即为斐波那契数列。
青蛙跳台阶问题说的是一个青蛙一次可以跳一个台阶或两个台阶问我们最终跳到n台阶时共有多少种可能性 java采用递归解决青蛙跳台阶问题(有思路详解,还有代码实现) 青蛙跳台阶问题,说的是一个青蛙一次可以跳一个台阶或两个台阶,问我们最终跳到n台阶时共有多少种可能性? 思考思路 1.我们先考虑这个问题的结束条件,即...
1、当青蛙第一次跳1个台阶,剩下3个台阶,则还有3种跳法。 2、当青蛙第一次跳2个台阶,剩下2个台阶,则还有2种跳法。 故阶数为4时共有3+2=5种跳法。 同理分析阶数为5的情况。 1、当青蛙第一次跳1个台阶,剩下4个台阶,则还有5种跳法。 2、当青蛙第一次跳2个台阶,剩下3个台阶,则还有3种跳法。
剑指Offer---青蛙跳台阶问题 题目: 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。 思路: 一直青蛙一次只有两种跳法,跳1阶,或者跳2阶。假设第一次跳跳1阶,那么剩下的n-1个台阶,跳法有f(n-1);如果第一次跳2阶,那么剩下来...
OK,理论讲完了,我们来分析一下这个青蛙跳台阶的问题,青蛙要跳上n级的台阶有两种情况,情况1是青蛙先跳到了(n-2)级台阶,然后又跳了2级;情况2是青蛙先跳到了(n-1)级台阶,然后又跳了1级。那么这个问题就拆解为了青蛙跳到n-2级台阶有几种跳法和青蛙跳到n-1级台阶有几种跳法两个子问题,即f(n)=f(n-...
剑指Offer 10- II. 青蛙跳台阶问题 一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶。求该青蛙跳上一个 n 级的台阶总共有多少种跳法。 答案需要取模 1e9+7(1000000007),如计算初始结果为:1000000008,请返回 1。 示例1: 输入:n = 2 输出:2 示例2:...
问题描述:一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 题目分析: 1)这里的f(n) 代表的是n个台阶有一次1,2,...n阶的 跳法数。 2)n = 1时,只有1种跳法,f(1) = 1 ...