斐波那契数,亦称之为斐波那契数列(意大利语: Successione di Fibonacci),又称黄金分割数列、费波那西数列、费波拿契数、费氏数列,指的是这样一个数列:1、1、2、3、5、8、13、21、……
在数学上,斐波那契数列以如下被以递归的方法定义:F0=0,F1=1,Fn=Fn-1+Fn-2(n>=2,n∈N*
),用文字来说,就是斐波那契数列由 0 和 1 开始,之后的斐波那契数列系数就由之前的两数相加。
//1、1、2、3、5、8、13、21、……
//时间复杂度 O(n)
int fib (int n){
if (n<=1) {
return 1;
}
int first = 0;
int second = 1;
for (int i = 0; i
递归
时间复杂度:O(2^n)
int fib (int n){
if (n<=1) {
return 1;
}
return fib(n-1)+fib(n-2);
}
动态规划
时间复杂度:O(n)
空间复杂度:O(n)
int fib(int n){
int array[n];
array[0] = 1;
array[1] = 1;
for (int i = 2; i