剑指offer 面试题10 斐波那切 by java
斐波那契数列
http://www.nowcoder.com/questionTerminal/c6c7742f5ba7442aada113136ddea0c3
方法1: 常规的递归方法
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); } }
方法2:时间效率不行,改动态规划,而且是1个变参,一维数组表,很简单
public class Solution { public int Fibonacci(int n) { if(n==0){ return 0; } if(n==1){ return 1; } int[] arr=new int[n+1];//动态规划数组 arr[0]=0; arr[1]=1; for(int i=2;i<=n;i++){ arr[i]=arr[i-1]+arr[i-2]; } return arr[n]; } }