第 19 题(数组、递归):题目:定义 Fibonacci 数列如下:/ 0 n=0f(n)= 1 n=1/ f(n-1)+f(n-2) n=2输入 n,用最快的方法求该数列的第 n 项。思路:递归和非递归的 下面的代码有个问题,没有考虑大数越界。返回值应该设成long long型的递归速度非常慢/...
分类:
其他好文 时间:
2014-09-15 14:11:38
阅读次数:
194
Revenge of Fibonacci
Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 204800/204800 K (Java/Others)
Total Submission(s): 2027 Accepted Submission(s): 475
Problem Description
The...
分类:
其他好文 时间:
2014-09-14 23:45:17
阅读次数:
501
经典算法详解(2):费氏数列
说明:
Fibonacci为1200年代的欧洲数学家,在他的着作中曾经提到:「若有一只免子每个月生一只小免子,
一个月后小免子也开始生产。起初只有一只免子,一个月后就有两只免子,
二个月后有三只免子,三个月后有五只免子(小免子投入生产)......。
如果不太理解这个例子的话,举个图就知道了,注意新生的小免子需一个月成长期才会投入生产,
类似的道...
分类:
其他好文 时间:
2014-09-13 22:52:16
阅读次数:
261
递归在解决某些问题的时候使得我们思考的方式得以简化,代码也更加精炼,容易阅读。那么既然递归有这么多的优点,我们是不是什么问题都要用递归来解决呢?难道递归就没有缺点吗?今天我们就来讨论一下递归的不足之处。谈到递归就不得不面对它的效率问题。为什么递归是低效的还是拿斐波那契(Fibonacci)数列来做例...
分类:
其他好文 时间:
2014-09-13 21:21:55
阅读次数:
617
这是一道变换了的斐波那契数列,但是你如果写成递归函数的话内存是不够的,因为n的范围很大,如果你把前20项打出来的话,你会发现规律:就是从2开始是yes,每隔4个就是yes,其余是no。按这个规律编程绝对没问题,但是我还是愿意在这里证明一下其正确性。
我们看前七项,并设为ai:
7 11 18 29 47 76 123
a1 a2 a3 a4 a5 a6 a7
易知a3和a7是能被3整除的,其实如果只知道a3能被3整除,就能推出a7也能被3整除:
a7 = ...
分类:
其他好文 时间:
2014-09-13 10:43:25
阅读次数:
227
目录 1、斐波那契数列(Fibonacci)介绍 2、朴素递归算法(Naive recursive algorithm) 3、朴素递归平方算法(Naive recursive squaring...
分类:
其他好文 时间:
2014-09-10 20:51:21
阅读次数:
602
这是一个简易的Dijkstra算法的优化实现,利用了堆,这里使用C++中的优先级队列。利用STL内置的堆实现只是优化的第一步,更进一步的优化包括使用Fibonacci堆等更高级数据结构。算法中,使用邻接表作为存储图的数据结构,利用一个int数组d保存过程中及最后得到的最短路长度,再自定义一个pair...
分类:
编程语言 时间:
2014-09-09 19:58:49
阅读次数:
285
//a[n]=a[n-1]+a[n-2]+a[n-3]+a[n-4];
# include
# include
# include
# include
using namespace std;
int a[10000][260]={0}; //每个元素可以存储8位数字,所以2005位可以用260个数组元素存储。
int main()
{
int i,j,n;
a[1][0...
分类:
其他好文 时间:
2014-09-09 16:10:58
阅读次数:
179
记得在我们最开始学习C语言的时候,每当讲到递归,无论是课本上,还是老师,都会给出两个经典例子的递归实现,其中一个就是阶乘,另外一个就是Fibonacci(中文多译成斐波那契)数列了。用递归方法计算阶乘的代码如下://递归计算阶乘long Factorial(int n){ if (n 1) { r....
分类:
其他好文 时间:
2014-09-05 23:46:32
阅读次数:
252
题目链接
题意:g(x) = k * x + b。f(x) 为Fibonacci数列。求f(g(x)),从x = 1到n的数字之和sum,并对m取模。
思路:
设A = |(1, 1),(1, 0)|
sum = f(b) + f(k + b) + f(2k + b)...+f((n-1)k + b) (f(x) 为Fibonacci数列)
sum = A^...
分类:
其他好文 时间:
2014-09-03 22:49:07
阅读次数:
314