Time complexity 从0到i的内部循环的时间复杂度

Time complexity 从0到i的内部循环的时间复杂度,time-complexity,Time Complexity,在实际测试中获得时间复杂度分析代码: for i ​in​ 0..n-1: ​for​ j ​in​ 0..i: 答案将这个循环的复杂度写为O(n^2),并解释两个循环的复杂度都是O(n)。我不明白为什么这不是O(n!),因为内部循环将先运行0次,然后是1、2、3,依此类推,直到n-1次。内部循环将运行O(Sigma(n))次或O(n^2) 如果 第一次迭代运行0次,最后一次运行n-1次 第二次迭代运行1次,下一次运行到最后n-2次 第三次迭代为2次,第二次迭代为最后n-3次, 等

在实际测试中获得时间复杂度分析代码:

for i ​in​ 0..n-1:
    ​for​ j ​in​ 0..i:
答案将这个循环的复杂度写为O(n^2),并解释两个循环的复杂度都是O(n)。我不明白为什么这不是O(n!),因为内部循环将先运行0次,然后是1、2、3,依此类推,直到n-1次。

内部循环将运行O(Sigma(n))次或O(n^2)

如果

  • 第一次迭代运行0次,最后一次运行n-1次
  • 第二次迭代运行1次,下一次运行到最后n-2次
  • 第三次迭代为2次,第二次迭代为最后n-3次, 等

然后,他们将发生(n/2)次的(n-1)进行平均-或者O(n^2)

你是如何得到的
n退出?阶乘是第一个
n
数的乘积,而不是它们的和……这能回答你的问题吗?非常感谢。被不断变化的循环条件弄糊涂了:)