题目:大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项。
思路:经典的题目,递归的效率不如循环,因为递归要做许多重复计算。使用循环可以保存计算结果以重用。
实现代码:
public class Solution { public int Fibonacci(int n) { if(n <= 0) return 0; if(n == 1) return 1; int[] ret = new int[n+1]; ret[0] = 0; ret[1] = 1; for(int i=2; i<=n; i++) { ret[i] = ret[i-1] + ret[i-2]; } return ret[n]; } }