for循环的运行时间

时间:2016-01-13 18:08:44

标签: algorithm performance analysis

我正在尝试测量此代码的运行时间。但我很困惑。它的运行时间是n ^ 3还是2 ^ n?

以下是代码:

for i ← 0 to n do
 for j ← 0 to 2 ∗ i − 1 do
  for k ← 1 to 2^j do
   Let A[i] ← A[i] + A[j] + A[k].
  end for
 end for
end for

1 个答案:

答案 0 :(得分:1)

既不是也不是。复杂度为O(n ^ 2 * 2 ^(2 * n))= O(n ^ 2 * 4 ^ n)。可能有更好的约束,我没有做详细的数学。