- 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项
有两种解法,一种是迭代的方法,一种是递归的方法。
迭代
def Fibonacci(self, n):
# write code here
preNum=1
prePreNum=0
reult=0
if(n==0):
return 0
if(n==1):
return 1
while i<=n:
result=preNum+prePreNum
prePreNum=preNum
preNum=result
i +=1
return result
递归
Fibonacci(int n):
if(n <= 0) return 0;
if(n == 1) return 1;
if(n == 2) return 1;
int fib_n = 0;
fib_n = Fibonacci(n -1) + Fibonacci(n - 2);
return fib_n;
动态规划
if(n <= 0) return 0;
int first = 1;
int second = 1;
while(--n > 1){
second = first + second;
first = second - first;
}
return second;
}