1. 题目描述
大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。n<=39
2. 思路和方法
斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波纳契数列以如下被以递推的方法定义:F(1)=1,F(2)=1, F(n)=F(n-1)+F(n-2)(n>=3,n∈N*)。
在本题中,有一个条件是“从0开始,第0项为0”,从0开始,因此,F(0)=0,F(1)=1, F(n)=F(n-1)+F(n-2)(n>=2,n∈N*)。
3.C++代码
1 class Solution { 2 public: 3 int Fibonacci(int n) { 4 if (n <= 1) 5 return n; 6 int res = 0; 7 int n1 = 0; 8 int n2 = 1; 9 for (int i=2; i<=n; i++){ 10 res = (n1 + n2); 11 n1 = n2; 12 n2 = res; 13 } 14 return res; 15 } 16 };