斐波那契的两种实现方法
2015-05-10 16:34
134 查看
#include <stdio.h> int fib(int n) { int a = 1; int b = 1; int c = a = b; int i = 0; for (i = 3; i <= n; i++) { c = a + b; a = b; b = c; } return c; } int main() { printf("%d\n", fib(10000)); getchar(); return 0; }
非递归方法
#include <stdio.h> int fib(int n) { int count = 0; if (n <= 2) return 1; else if (n == 4) count++; else return fib(n - 2) + fib(n - 1); } int main() { printf("%d\n", fib(10000)); getchar(); return 0; }
递归实现方法
总结:递归的效率较循环等方法,效率较低,尤其数值较大时,效率极慢,且易造成栈溢出。
相关文章推荐
- 斐波那契(面向对象方法实现和规律实现两种方法)
- java实现斐波那契的两种方法
- java实现斐波那契的两种方法
- 斐波那契数列的两种实现方法
- Java动态代理的两种实现方法
- Java动态代理的两种实现方法
- php 防止表单重复提交两种实现方法
- 线性表的两种实现方式—— 顺序表及单链表的实现 ps:图片放大方法在见评论第一楼
- Asm实现静态AOP的两种方式-在进入方法和限出方法时注入代码实现aop代码增强
- PHP yii实现model添加默认值的方法(两种方法)
- 两种方法帮你实现pdf转换成ppt文件格式
- HibernateTemplate、HibernateDaoSupport两种方法实现增删改查Good
- 纯css实现Tab切换的两种方法
- 链表去重操作-两种方法的实现
- Android 实现button点击效果的两种方法
- Map读取键值对,Java遍历Map的两种实现方法
- IOS开发之----两种保存用户名和密码实现记住密码库的方法
- 斐波那契数列(fibonacci)两种python实现的效率对比
- Java动态代理的两种实现方法
- JSP实现上传文件的两种方法