Time complexity while循环内嵌套for循环的时间复杂度

Time complexity while循环内嵌套for循环的时间复杂度,time-complexity,Time Complexity,如果while循环中有嵌套的for循环,如下所示: while(condition) for(i=0; i<size; i++) while(条件) for(i=0;i如果每次执行for循环时,您的意思是每次while(condition)触发新的for循环运行时,则时间复杂度为 也就是说,如果你在内部for循环中增加一个计数器,它将被增加=n选择2倍。但是因为在大O表示法中省略了常量因子和低阶项,我们可以直接写 用于说明,请考虑此Python 2.7实现(我将外部转换为循环+大小

如果while循环中有嵌套的for循环,如下所示:

while(condition)
   for(i=0; i<size; i++)
while(条件)
for(i=0;i如果每次执行for循环时,您的意思是每次
while(condition)
触发新的
for
循环运行时,则时间复杂度为

也就是说,如果你在内部for循环中增加一个计数器,它将被增加=n选择2倍。但是因为在大O表示法中省略了常量因子和低阶项,我们可以直接写

用于说明,请考虑此Python 2.7实现(我将外部<代码>转换为循环+<代码>大小< /代码>增量为for循环):

输出:

0
0 1
0 1 2
0 1 2 3
0 1 2 3 4
0 1 2 3 4 5
0 1 2 3 4 5 6
0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7 8

counter = 45
n choose 2 = 45
试着用不同的n值运行它,看看公式是否成立

0
0 1
0 1 2
0 1 2 3
0 1 2 3 4
0 1 2 3 4 5
0 1 2 3 4 5 6
0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7 8

counter = 45
n choose 2 = 45