计算斐波那契数列的两种常用方式的性能比较
来源:互联网 发布:最好的网络借贷平台 编辑:程序博客网 时间:2024/05/20 11:19
<span style="font-size:24px;">#include <stdio.h>#include <stdlib.h>/* 1.使用递归求解,但是性能非常差,原因就是在递归过程中大量重复计算, 使用递归的时候,算法的时间复杂度是以n的指数递增的, 在我实际测试的时候,这个方法计算到50的时候就会停下来, 所以在实际运用中不建议使用 但是在笔试的时候可以使用*/long long Fibonacci_digui(unsigned int n){ if(n <= 0) return 0; if(n == 1) return 1; return Fibonacci_digui(n-1)+Fibonacci_digui(n-2);}/* 2.为了避免大量的重复计算,使用一个变量来记录每次计算的结果, 然后使用循环来求解,这个算法的时间效率是O(n) 我计算4000的时候还可以得出结果, 计算10000就不行了,但相比较第一种方式,这种算法优势很明显,建议在比赛或者机试时候使用*/long long Fibonacci_xunhuan(unsigned n){ long long arr[2] = {0,1}; if(n <= 1) return arr[n]; long long num; //用来保存计算结果 int i; for(i = 2; i <= n; i++) { num = arr[1] + arr[0]; arr[0] = arr[1]; arr[1] = num; } return num;}int main(){ printf("%lld",Fibonacci_digui(8)); printf("%lld",Fibonacci_xunhuan(1000)); return 0;}</span>
0 0
- 计算斐波那契数列的两种常用方式的性能比较
- 斐波那契数列的两种实现方式
- 斐波那契数列的计算
- 斐波那契数列的计算
- “斐波那契数列”的两种算法
- 斐波那契数列的两种实现形式
- 斐波那契数列的两种实现方法
- “斐波那契数列”的两种算法
- 斐波那契数列的两种表达方式
- 斐波那契数列的两种实现方法
- “斐波那契数列”的两种算法
- 斐波那契数列的两种简单实现
- 斐波那契数列的两种实现
- 斐波那契数列的两种实现呢
- 计算斐波那契数列,两种方法,打开注释掉的语句你会感受到算法的力量
- 斐波那契数列的三种实现方式
- 斐波那契数列的四种实现方式
- Scala学习-不同方式计算斐波那契数列效率比较
- Poj 1609 Tiling Up Blocks (LIS--可以相等)
- spfa(前向星)
- 快速排序
- 电影下载
- Laravel 5.3 windows环境安装
- 计算斐波那契数列的两种常用方式的性能比较
- 微信bug总结一
- PyQt实现的生产者消费者模型
- 颜色空间那些事儿
- [Leetcode] Majority Element
- dfs-poj-1321棋盘问题
- 【洛谷P1268】树的重量 具体问题具体分析
- HDU 5858 Hard problem(计算几何)
- springMVC框架开发笔记 lesson3 SSM框架整合