使用递归的Power函数的运行时和空间复杂度

时间:2018-09-14 18:11:34

标签: java recursion

public static long pow_2(long x, int n) {
    if (n == 0)
        return 1;
    if (n == 1)
        return x;
    if (n % 2 == 0) {
        return pow_2( x, n / 2 ) * pow_2( x, n / 2 );
     }    
    else {
        return pow_2(x * x, n / 2) * x;
     }
}

空间复杂度不是OLog(n)吗,因为您每次调用时都要对堆栈主框架进行n / 2次调用?

时间复杂度不是O(2 ^ n),因为我们每次都会从函数中调用两次吗?

我正在使用Java。

0 个答案:

没有答案