//递归的求解
int FibonacciNum1(int n)
{
if (0 == n)
return 0;
else if (1 == n || 2 == n)
return 1;
else
return (FibonacciNum1(n - 1) + FibonacciNum1(n - 2));
}
//非递归的求解
int FibonacciNum2(int n)
{
int first = 1;
int second = 1;
int idx = 0;
for (idx = 2; idx < n; idx++)
{
int tmp = second;
second = first + second;
first = tmp;
}
return second;
}
斐波那契数的定义是用递归的形式定义的,使用递归的方法我们可以很轻易地写出代码,但是最好不要这样,递归的效率很低,n稍微大一点程序的执行就变得很慢。
斐波那契数的求解
最新推荐文章于 2022-02-04 11:47:43 发布