求斐波那契數列的第n個數

遞歸實現:

int f(int n)
{
	if (n > 0)
	{
		//int a = 1, b = 1, c;
		if (1 == n)
			return 1;
		if (2 == n)
			return 1;
		return f(n - 1) + f(n - 2);
	}
	
	return -1;
}

非遞歸實現:

int f(int n)
{
	int a = 1;
	int b = 1;
	int c,i;
	for (i = 3; i <= n; i++)
	{
		c = a + b;
		a = b;
		b = c;
	}
	return b;//注意一定要返回b
}


發佈了44 篇原創文章 · 獲贊 3 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章