手机
当前位置:查字典教程网 >编程开发 >C语言 >递归形式与非递归形式的斐波那契数列的用法分析
递归形式与非递归形式的斐波那契数列的用法分析
摘要:复制代码代码如下:采用递归形式和非递归形式实现斐波那契数列复制代码代码如下:#include"stdafx.h"#includeusingn...

复制代码 代码如下:

<SPAN>采用递归形式和非递归形式实现斐波那契数列</SPAN>

复制代码 代码如下:

#include "stdafx.h"

#include <iostream>

using namespace std;

//递归形式的斐波那契数列

int fibonacciRecursion(int n)

{

if (n == 1 || n ==2)

{

return 1;

}

if (n > 2)

{

return fibonacciRecursion(n - 1) + fibonacciRecursion(n - 2);

}

}

//非递归形式的斐波那契数列

//用一个数组作为辅助的空间

//效率较高

int fibonacci(int n)

{

int temp[2];

temp[0] = 1;

temp[1] = 1;

if (n == 1 || n == 2)

{

return 1;

}

else

{

for (int i = 2; i < n; i ++)

{

int tp = temp[0] + temp[1];

temp[1] = temp[0];

temp[0] = tp;

}

return temp[0];

}

}

测试代码:

复制代码 代码如下:

int _tmain(int argc, _TCHAR* argv[])

{

cout << fibonacci(1) << " " << fibonacci(2) << " " << fibonacci(3) << " " << fibonacci(4) << " "

<< fibonacci(5) << " " << fibonacci(6) << " "<< fibonacci(7) << " "<< fibonacci(8) << " "

<< fibonacci(9) << " " << fibonacci(10) << endl;

cout << fibonacciRecursion(1) << " " << fibonacciRecursion(2) << " " << fibonacciRecursion(3) << " " <<

fibonacciRecursion(4) << " "<< fibonacciRecursion(5) << " " << fibonacciRecursion(6) << " "<< fibonacciRecursion(7)

<< " "<< fibonacciRecursion(8) << " "<< fibonacciRecursion(9) << " " << fibonacciRecursion(10) << endl;

return 0;

}

【递归形式与非递归形式的斐波那契数列的用法分析】相关文章:

C++中函数模板的用法详细解析

斐波那契数列 优化矩阵求法实例

HDOJ 1443 约瑟夫环的最新应用分析详解

c语言中static的用法详细示例分析

最长公共子字符串的使用分析

生成随机数rand函数的用法详解

C++输入一个字符串,把其中的字符按照逆序输出的两种方法解析

C/C++动态分配与释放内存的区别详细解析

求斐波那契(Fibonacci)数列通项的七种实现方法

C 二分查找 递归与非递归的实现代码

精品推荐
分类导航