如何计算Big theta中的时间复杂度

时间:2018-05-26 16:08:52

标签: time-complexity big-o notation

我正在尝试计算Big theta中的时间复杂度。请帮我解决这个问题。

Q值。有两个函数, sub1 sub2 ,它们的时间复杂度分别为θ(4 ^ n),θ(n ^ 4 * log(n))。如果是这样,请发现以下两个问题。

Q1。 for(i=1; i<n; i*=4) sub1();

Q2。 for(i=1; i<n; i+=4) for(j=1; j<n; j*=4) { sub1(); sub2(); sub1(); sub2(); }

1 个答案:

答案 0 :(得分:0)

S1。函数 sub1 被称为(log_4(n))次。因此总时间复杂度为:θ(4 ^ n log_4(n))=θ(4 ^ n log(n))

S 2。第一个循环发生n / 4次,第二个循环发生log_4(n)次。通过定义θ,每个步骤取2 *θ(4 ^ n)+ 2 *θ(n ^ 4 * log(n))=θ(4 ^ n)。因此,总时间为:n / 4 * log_4(n)*θ(4 ^ n)=θ(n)*θ(log(n))*θ(4 ^ n)=θ(n * 4 ^ n * log(n)),再次定义为θ。