Time complexity 具有2个变量的3个嵌套循环的时间复杂度

Time complexity 具有2个变量的3个嵌套循环的时间复杂度,time-complexity,nested-loops,Time Complexity,Nested Loops,当涉及2个变量而不仅仅是N时,如何表示下一个嵌套循环的时间复杂度 假设N=大小的输入 A=某个离散值(相关数量) 对于N=50000和A=30000 for( int i=0;i<N;i++) { for( int j=0;j<A;j++ ) { for( int x=0;x<N;x++) { // do something doSomething(); } } } 对于

当涉及2个变量而不仅仅是N时,如何表示下一个嵌套循环的时间复杂度

假设N=大小的输入 A=某个离散值(相关数量)

对于N=50000和A=30000

for( int i=0;i<N;i++)
{
    for( int j=0;j<A;j++ )
    {
       for( int x=0;x<N;x++)
       {
          // do something
          doSomething();
       }
    }
}

对于(int i=0;i是的,在您的情况下复杂性将是
O(N^2*A)
是的,O(A*N^2)。如果较小的术语单独影响时间复杂性,您只会忽略它们(即,“O(A+N^2)”将是O(N^2))

谢谢,如果A在每次迭代中变小?那么第一次是30K,然后是25K,然后是20K,依此类推?这取决于。我们有
N次
迭代。A将如何变化?好的,第三次操作20K,第十次操作会是什么?嗯,可能关于A的问题没有意义,因为A从原始值下降到0在80%的处理后开始,所以如此精确可能是无用的。