下面程序的时间复杂度为( )。
int rec_fib[MAX_N]; int fib(int n) { if (n <= 1) return n; if (rec_fib[n] != 0) return rec_fib[n]; return fib(n - 1) + fib(n - 2); }
O(ϕn),ϕ=5+12O(\phi^n), \phi = \frac{\sqrt{5}+1}{2}O(ϕn),ϕ=25+1
O(2n)O(2^n)O(2n)
O(n2)O(n^2)O(n2)
O(n)O(n)O(n)