I got stuck with this two codes.
Code 1
int f(int n){
if (n <= 1){
return 1;
}
return f(n-1) + f(n-1);
}
代码 2(平衡二叉搜索树)
int sum(Node node){
if(node == null){
return 0;
}
return sum(node.left) + node.value + sum(node.right);
}
作者称 Code 1 的运行时复杂度为 O(2^n),空间复杂度为 O(n)。
而 Code 2 的时间复杂度为 O(N)。
我不知道这两段代码有什么不同。它们看起来都是相同的二叉树。