Độ phức tạp được đưa ra cho vấn đề sau là O (n). Không phải là O (n^2)? Đó là bởi vì vòng lặp bên ngoài là O (n) và bên trong cũng là O (n), do đó n * n = O (n^2)?Độ phức tạp của thuật toán
Bảng câu trả lời của câu hỏi này cho biết câu trả lời là O (n). Làm thế nào là có thể?
public static void q1d(int n) {
int count = 0;
for (int i = 0; i < n; i++) {
count++;
for (int j = 0; j < n; j++) {
count++;
}
}
}
Sự phức tạp của vấn đề sau là O (n^2), bạn có thể đạt được điều đó như thế nào? Ai đó có thể vui lòng xây dựng?
public static void q1E(int n) {
int count = 0;
for (int i = 0; i < n; i++) {
count++;
for (int j = 0; j < n/2; j++) {
count++;
}
}
}
Cảm ơn
Tôi nghĩ phần trên là O (n^2) và bạn nghi ngờ gì về thứ hai? – WordsWorth
Điều này có nghĩa là câu trả lời được cung cấp bởi giáo sư của tôi là không đúng hmm. – Harminder
có vẻ như tờ trả lời có lỗi. – Zohaib