京峰Web安全高级工程师进阶
int fib(int n) {
if(n <= 0) return 0;
else if(n == 1) return 1;
return fib(n - 1) + fib(n - 2);}
T(n) = T(n - 1) + T(n - 2) + O(1) => O(2n) => 两侧树高度不同,根据数学表达式 => O(1.618n)
void allFib(int n) {
for(int i = 0; i < n; i++) {
System.out.println(i + ": " + fib(i));
}}int fib(int n) {
if(n <= 0) return 0;
else if(n == 1) return 1;
return fib(n - 1) + fib(n - 2);}