题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。对于第n个台阶来说,只能从n-1或者n-2的台阶跳上来,所以F(n) = F(n-1) + F(n-2)斐波拉契数序列,初始条件n=1:只能一种方法n=2:两种递归一下就好了public class S...
分类:
其他好文 时间:
2015-12-29 12:48:13
阅读次数:
185
自己没动脑子,大部分内容转自:http://www.jb51.net/article/37286.htm斐波拉契数列,看起来好像谁都会写,不过它写的方式却有好多种,不管用不用的上,先留下来再说。1.递归公式:f[n]=f[n-1]+f[n-2],f[1]=f[2]=1;(比较耗时,效率不高)代码: ...
分类:
其他好文 时间:
2015-11-30 22:13:54
阅读次数:
242
html 建议不适用递归调用,当数字很大时,递归会非常耗时。
分类:
编程语言 时间:
2015-08-19 19:53:04
阅读次数:
177
题意:大致就是给定一个斐波拉契-卢卡斯数列中的某一项an(题目没有说明,但是这其实就是斐波拉契卢卡斯数列),然后让你求出初始的斐波拉契-卢卡斯数列a1和a2的值,并使得a2尽可能小。
分类:
编程语言 时间:
2015-08-14 15:26:14
阅读次数:
219
/*
* 题目:题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,
问每个月的兔子总数为多少?
* 时间:2015年7月27日08:47:08
* 文件:lianxi01.cpp
* 作者:cutter_point
*/
#include
#include
using namespace std;
int...
分类:
其他好文 时间:
2015-08-08 19:55:43
阅读次数:
108
斐波拉契数列:波那契数列,又称黄金分割数列,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、……在数学上,斐波纳契数列以如下被以递归的方法定义:F(0)=0,F(1)=1,F(n)=F(n-1)+F(n-2)(n≥2,...
分类:
其他好文 时间:
2015-07-31 13:15:41
阅读次数:
172
对于斐波拉契经典问题,我们都非常熟悉,通过递推公式F(n) = F(n - 1) + F(n - 2),我们可以在线性时间内求出第n项F(n),现在考虑斐波拉契的加强版,我们要求的项数n的范围为int范围内的非负整数,请设计一个高效算法,计算第n项F(n)。第一个斐波拉契数为F(0) = 1。 给定...
分类:
其他好文 时间:
2015-07-24 22:26:20
阅读次数:
149
斐波拉契堆是由一组最小堆有序树组成,每棵树遵循最小堆性质,并且每棵树都是有根而无序的。所有树的根通过left和right指针来形成一个环形的双链表,称为该堆的根表。
对于一个给定的斐波拉契堆H ,可以通过指向包含最小关键字的树根指针H.min来访问。堆中每个节点还包含x.mark,x.degree两个域,x.degree表示x的子女表中的子女个数;x.mark表示从x上次成为另一个节点子女...
分类:
编程语言 时间:
2015-07-18 17:14:13
阅读次数:
228
对递推和递归的理解
1.此问题能否用递推解决我们以斐波拉契数列问题为例进行阐述,斐波拉契数列为0、1、1、2、3、5、8、13、21、…表现斐波拉契数列为瘦柱状图的形式,如下
我们现在所要解决的问题是求取第n个位置的数值,下面我们正式开始考虑能否用递推解决这个问题(关于递推和递归的区别,将会在下文阐述):
我们考察3号位置,我们发现3号位置的值依赖于1号位置和2号位置,即在1号位置的值和2号位...
分类:
其他好文 时间:
2015-06-13 12:54:39
阅读次数:
156
题目描述:
初阶:有n层的台阶,一开始你站在第0层,每次可以爬两层或者一层。请问爬到第n层有多少种不同的方法?
进阶:如果每次可以爬两层,和倒退一层,同一个位置不能重复走,请问爬到第n层有多少种不同的方法?
解题思路:
初阶:一维动态规划。爬楼梯数目其实是一个斐波拉契数列。
假定f[i] 表示是爬到第i层的方法,那么f[i] = f[i-1] + f[i-2] //第i层的方...
分类:
其他好文 时间:
2015-06-12 11:53:07
阅读次数:
116