恒定时间,线性时间复杂度

时间:2020-08-21 13:09:18

标签: c++ time-complexity

为什么在第一个代码中时间复杂度是O(1)而第二个代码中时间复杂度是O(n):

//first code:
int i = 0;
while(i < 11)
{
   i=i+1;
}

//second code:
int i =0;
while(i < n)
{
   i = i+1;
}

第二个代码中的n是大小。

2 个答案:

答案 0 :(得分:1)

为什么在第一个代码中时间复杂度是O(1)

因为它执行恒定数量的操作。

第二个代码是O(n)

因为它执行的操作相对于n呈线性增加。

答案 1 :(得分:0)

在第一个代码中,while循环将一直运行到我达到11时,所以时间兼容性为O(1)。

在第二个代码中,while循环将取决于n的值,因此,如果给n赋11,它将一直运行到我达到11,但是如果给111,它将运行直到i达到111,所以使代码时间复杂度为O )次。

相关问题