rul*_*ing 3 java algorithm complexity-theory big-o for-loop
我很难获得这个for循环的复杂性
for (i = 4; i < n; i++)
{
for (j = i - 3, sum = a[i - 4]; j <= i; j++)
{
sum += a[j];
}
System.out.println("sum thru" + i + ": " + sum);
}
Run Code Online (Sandbox Code Playgroud)
我认为这个嵌套循环的复杂性是n ^ 2,因为它是一个嵌套循环,但有人告诉我这是不正确的,嵌套循环并不总是二次复杂!
我真的不知道如何以一种好的方式获得复杂性.我已经看过很多关于Big-O和复杂性的文章,但它们没有用,因为他们希望我知道一切,他们的例子和我的任何例子都不一样.
我不是要求答案,我要求的方法.是否有任何公式或方法适用于本主题中的所有内容?我想知道如何获得作业的数量,但不幸的是我不知道如何做到这一点.
有人可以一步一步向我解释吗?