【剑指Offer】面试题10-1:求斐波那契数列的第n项

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

实现

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public class Solution {
public int Fibonacci(int n) {
// 特殊输入检查
if (n <= 0)
return 0;
if (n == 1 || n == 2)
return 1;

// 动态规划
int a = 1, b = 1;
int tmp;
for (int i = 3; i <= n; i++) {
tmp = a + b;
a = b;
b = tmp;
}
return b;
}
}