题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 ...
分类:
其他好文 时间:
2016-06-11 21:26:03
阅读次数:
185
这个题是个复杂的跳台阶问题,主要是测试能否跳到最后,它不像之前那些跳台阶问题了,之前的不会考虑能否跳出去的问题。所以之前的程序用在这里很可能会导致死循环;我的主要思路是"贪心算法+筛选条件"来解题。
1.贪心算法主要是用来减少跳的次数
我们可以从当前位置(cur)可以跳的步数(N),以及当前位置所跳的范围内[cur~cur+N]中每个台阶能跳的最大距离...
分类:
其他好文 时间:
2016-05-30 15:21:13
阅读次数:
183
这个题目是一个特殊的跳台阶问题,给定一个数组,每个数组里面存放的是该位置可以跳的步数,求出跳到最后位置所需要的最少的步数。我看到这个题目的时候脑子里面的第一印象是递归,递归去求解肯定是可以的,于是我写了下面的代码(结果是超时!)
解法一,递归查找,时间效率太低了。。。不行
class Solution {
public:
int jump(vector& nums)
{
/*
数组...
分类:
其他好文 时间:
2016-05-18 18:27:11
阅读次数:
197
台阶问题:问题描述:
一个台阶总共有n级,没一次都可以选择跳1级,或者跳2级。
求总共有多少种跳法,并分析算法的时间复杂度。
分析:
如果只有一阶,f (1)= 1,有两阶,有两种跳法,分两次跳,每次一级,或者是一次跳2级。推广到n阶台阶,(n>2),第一次跳的时候又两种选择,如果是第一次跳一级,那么跳法数目等于f(n-1) ,另外一种是第一次跳2级,此时跳法数组等于f(n-2),所以总的...
分类:
编程语言 时间:
2016-05-12 20:48:42
阅读次数:
150
题目描述
一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法
输入描述
台阶数
输出描述
跳法数
题目分析
设n阶的跳数为f(n)
当n=1时,f(1) = 1
当n=2时,分为最后一步 跳2阶和跳1阶 两种情况,有f(2)=f(0)+f(1)=1+1=2
当n=3时,分为最后一步 跳3阶、跳2阶和跳1阶 三种情况,有f(3...
分类:
其他好文 时间:
2016-04-27 17:17:32
阅读次数:
109
题目描述
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
输入描述
台阶级数 target
输出描述
多少种跳法
题目分析
假设跳上n阶台阶时有f(n)种跳法
要跳上n阶只能从n-1阶或是n-2阶跳上去
那么有f(n)=f(n-1)+f(n-2)成立,这符合斐波那契数列
显然n=1时 f(1)=1,n=2时f(2)=2,n=3时f(3)=...
分类:
其他好文 时间:
2016-04-27 11:00:42
阅读次数:
123
问题 一只青蛙一次可以跳上 1 级台阶,也可以跳上2 级。求该青蛙跳上一个n 级的台阶总共有多少种跳法。 思路 当n=1时,只有一种跳法,及f(1)=1,当n=2时,有两种跳法,及f(2)=2,当n=3时,可以从n=1直接跳到n=3,也可以从n=2直接跳到n=3,及f(3)=f(1)+f(2)=3. ...
分类:
其他好文 时间:
2016-04-18 15:21:52
阅读次数:
171
【题目】一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。【思路】 * n=1时,有1种跳法,f(1)=1; * n=2时,有2种跳法,f(2)=2; * n=3时,有3种跳法,f(3)=3=f(3-1)+f(3-2)=f(2)+f(1); * n=4时,有5 ...
分类:
其他好文 时间:
2016-04-13 14:38:52
阅读次数:
141
题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 思路:F(n) = F(n-1) + F(n-2) + F(n-3) + ... + F(n-n) 其中 F(n-k) (k = 1, 2, 3, ... n) 为第一次跳k阶, ...
分类:
其他好文 时间:
2016-04-05 14:03:43
阅读次数:
152