Java 关于ELSE的时间复杂性?

Java 关于ELSE的时间复杂性?,java,time-complexity,big-o,nested-if,Java,Time Complexity,Big O,Nested If,我找不到关于它的任何信息,所以我希望你能帮助我。 问题是关于嵌套的else if in for循环和时间复杂度计算 我的一般准则是: for(i=0; i<n; i++) { if(___); else { if(___); else(___); } } for(i=0;i因为O(1)与O(n)相比是渐近不显著的,不管你使用哪一个,结果仍然是O(n) 如果你做了最坏的情况,它将是O(n)*[O(1)+O(1)+O(1)]=O(2n)=>O(n),对于循环

我找不到关于它的任何信息,所以我希望你能帮助我。 问题是关于嵌套的else if in for循环和时间复杂度计算

我的一般准则是:

for(i=0; i<n; i++)
{
  if(___);
  else 
  {
    if(___);
    else(___);
  }
}
for(i=0;i因为
O(1)
O(n)
相比是渐近不显著的,不管你使用哪一个,结果仍然是
O(n)


如果你做了最坏的情况,它将是
O(n)
*
[O(1)+O(1)+O(1)]
=
O(2n)
=>
O(n)
,对于循环的每一次迭代,你都在做每一个条件,所以它是
n*2
操作。

为了说明,我看一下第一个If,并看到它是一个O(1),然后我加上第一个else,我知道它由两个O(1)语句组成(第二个if和else),因此我的最终计算是O(n)*[O(1)+O(1)]?所以每个if都有一个条件(它本身具有复杂性)和随后的操作
每个if/else的代码的复杂度都是
O(1)
。最坏的情况是检查if(
O(1)
),转到相应的else,执行else操作,这是另一个if条件(
O(1)
),然后转到最后一个else,它将是
O(1)
。所以最坏的情况是每次迭代都是
O(1)+O(1)+O(1)