1. 程式人生 > >斐波那契數列的遞迴與非遞迴的實現

斐波那契數列的遞迴與非遞迴的實現

0,1,1,2,3,5,8…這樣的數列稱作斐波那契數列 1、遞迴實現方式

//斐波那契數列遞迴實現
long long Fib1(long long n)
{
	if (n<=1)
		return n;
	else
		return Fib1(n - 1) + Fib1(n - 2);
}

遞迴方式實現

//斐波那契數列非遞迴實現
long long Fib2(long long n)
{
	unsigned long first = 0;
	unsigned  second = 1;
	unsigned ret = 0;
	if (n <= 1)
		return n;
	for (int i = 2; i < n; i++)
	{
		ret = first + second;
		first = second;
		second = ret;
	}
	return ret;
}