面试题9.斐波那契数列

题目描述

大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项。

n<=39

解题思路

递归和循环都可以实现,但递归容易导致栈溢出,此处用循环实现递归

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public class {
public int Fibonacci(int n){
if(n == 0)
return 0;
if(n == 1)
return 1;
if(n == 2)
return 1;
int FibFirst = 1;
int FibSecond = 1;
int FibResult = 0;
for(int i = 3; i <= n ; i++){
FibResult = FibFirst + FibSecond;
FibFirst = FibSecond;
FibSecond = FibResult;
}
return FibResult;
}
}