题目描述
你们都知道斐波那契数列,如今要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。
n<=39web
解题思路一:
用递归的方法。svg
代码以下:3d
public class Solution { public int Fibonacci(int n) { if(n == 0) { return 0; } if(n == 1) { return 1; } return Fibonacci(n-1) + Fibonacci(n-2); } }
解题思路二:
从下往上计算,使用循环(递归重复计算太多)。code
代码以下:xml
public class Solution { public int Fibonacci(int n) { int[] res = {0, 1}; if(n < 2) { return res[n]; } int first = 0; int second = 1; int fibn = 0; for(int i = 2; i <= n; i++) { fibn = first + second; first = second; second = fibn; } return fibn; } }