(C语言)循环与递归求斐波那契数
来源:互联网 发布:美工培训讲师简介 编辑:程序博客网 时间:2024/05/23 12:57
#include <stdio.h>long Fibonacci_loop(int n);long Fibonacci_rec(int n);int main(){ int n; printf("Enter a number:\n"); scanf("%d",&n); printf("loop Fibonacci:%ld\n",Fibonacci_loop(n)); printf("recursion Fibonacci:%d\n",Fibonacci_rec(n)); return 0;}long Fibonacci_loop(int n){ int i; long sum,sum1,re; if(n<=2) return 1; for(sum=1,re=1,sum1=1,i=1;i<=(n-2);i++) { re=sum; sum=sum1+sum; sum1=re; } return sum;}long Fibonacci_rec(int n){ if(n>2) return Fibonacci_rec(n-1)+Fibonacci_rec(n-2); else return 1;}
循环函数原创,递归书上代码。
当n过大时,递归部分调用过多变量(2的n-1次方),系统会占用大量内存,运行较慢。
阅读全文
0 0
- (C语言)循环与递归求斐波那契数
- C语言递归与非递归实现求第n个斐波那契数
- 【C语言】求取第n个斐波那契数的时间复杂度、空间复杂度分析,用三种方式实现(普通递归,循环,优化递归)
- [斐波那契数]循环与递归
- 递归和非递归分别实现求第n个斐波那契数(C语言)
- c语言实现求第n个斐波那契数。(递归和非递归)
- C语言循环与递归
- C语言用递归求斐波那契数,让你发现递归的缺陷和效率瓶颈
- C语言用递归求斐波那契数,让你发现递归的缺陷和效率瓶颈
- C语言实现-递归和非递归求第n个斐波那契数
- 【C语言】求斐波那契(Fibonacci)数列通项(递归法、非递归法)
- C语言中的循环与递归
- 【C语言】斐波那契数
- 求第n个斐波那契数(非递归与递归方法实现)
- 斐波那契数列递归解法与循环解法
- 剑指offer_递归与循环---斐波那契数列
- 斐波那契数列递归与非递归实现(JAVA语言描述)
- 斐波那契数列递归与非递归实现(JAVA语言描述)
- java面试题及答案
- Linux命令--stat
- nodejs实时监听调试工具--supervisor
- 用C语言实现扫雷
- (转)Deep Learning(深度学习)学习笔记整理系列之(四)
- (C语言)循环与递归求斐波那契数
- 项目:停车场
- maven项目导入到Eclipse项目和IDEA项目
- vultr+ss-libev+hiwifi
- Truck History POJ
- 17.11.28,web学习第十四天,还有一年,努力吧青年HttpServletResponse
- 5.4.0 RegExp类型
- TCP与UDP的区别
- (转)Deep Learning(深度学习)学习笔记整理系列之(五)