确定具有内循环重复时间的循环的 big-O 运行时是常量

Determining the big-O runtimes of loop with inner loop repeat time is const

我有一个功能

for(int i=0;i<n; i++)
{
  b[i]=0;
  for(int j=0;j<5;j++)
  { 
    b[i]=a[j+i]
  }
}

我需要计算上述函数的大O。我的答案是:
内循环 运行 5n 时间 => O(n)。 所以总的复杂度是O(n)。我想我的计算有误,但我不知道我的错误在哪里。

不,你没有犯任何错误。您的想法是正确的,您的解决方案是否完美!

外循环将 运行 n 次,内循环 运行s 5(常数)次。

因此,循环复杂度为 O(5*n) = O(n),其他语句的时间复杂度为常量。

因为,程序执行 5*n 次意味着程序的时间复杂度为 O(n)