紧密的运行时绑定循环

时间:2013-09-27 02:41:17

标签: complexity-theory time-complexity

有人可以帮我找到这个循环的紧密运行时绑定:

for(c4=0, i=1; i<=n; i = 2*i)
   for(j=1; j<= i; j++)
       c4++;

我不知道如何处理外循环中的2 * i,我认为内循环类似于O(i-1)/ 1,并且就n而言将是O(n-1)因为我一直&lt; = n。

提前致谢。

1 个答案:

答案 0 :(得分:1)

外部循环将运行log(N)次。对于每个外部循环,内部循环将运行i次。 i从1,2,4,8,16,...,log(N)开始。

因此总数约为2 ^(log(N)) - 1,它是O(N)