[英]constant time,linear 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 是大小。
為什么在第一個代碼中時間復雜度是 O(1)
因為它執行恆定數量的操作。
第二個代碼是 O(n)
因為它執行的操作數量相對於 n 線性增加。
在第一個代碼中,while 循環將一直運行直到 i 達到 11,因此時間復雜度為 O(1)。
在第二個代碼中,while 循環將運行取決於 n 的值,因此如果您為 n 提供 11,它將運行直到 i 達到 11,但是如果您提供 111,它將運行直到 i 達到 111,因此它使代碼時間復雜度為 O(N) 倍。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.