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
数的乘积,而不是它们的和……这能回答你的问题吗?非常感谢。被不断变化的循环条件弄糊涂了:)