嵌套循环的大theta符号与除法

时间:2014-11-20 00:34:14

标签: javascript big-o big-theta

我正在尝试解决此函数的大写法。

我假设外部循环是log(n)而内部循环是(n)?总的来说,这将是nlogn?

var total = 4;
    var c = 6;
    for(var v = c ; v > 0 ; v = Math.floor(i/4 ))
        for(var x = 0; x < Math.pow(c,2); j++ )
            total++ ;

    console.log(total);

2 个答案:

答案 0 :(得分:1)

内循环从0到n ^ 2,所以它实际上是n ^ 2 * log n。此外,对数的底数是4。

答案 1 :(得分:1)

由于Math.pow(n, 2)n平方且j在每次内循环迭代时递增1,因此内循环具有时间复杂度Theta(n²)(实际上它的主体完全执行)每个循环n²次)。正确猜到外环的主体被执行Theta(log(n))次。

由此产生的复杂性是Theta(n²log(n))。