斐波那契数列递归解法与循环解法
Posted ssopp24
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了斐波那契数列递归解法与循环解法相关的知识,希望对你有一定的参考价值。
写一个函数,输入n,求斐波那契数列的第n项。
递归解法(效率很低):
int Fibonacci(int n)
if ( 0 == n )
return 0;
else if ( 1 == n )
return 1;
else
return Fibonacci(n-1) + Fibonacci(n-2);
循环解法(O(n)):
long long Fibonacci( unsigned n )
int result[2] = 0, 1 ;
if ( n < 2 )
return result[n];
long long fibNMinusOne = 0;
long long fibNMinusTwo = 1;
long long fibN = 0;
for ( unsigned i = 2; i <= n; ++i )
fibN = fibNMinusOne + fibNMinusTwo;
fibNMinusOne = fibNMinusTwo;
fibNMinusTwo = fibN;
return fibN;
以上是关于斐波那契数列递归解法与循环解法的主要内容,如果未能解决你的问题,请参考以下文章