假设有 个班级的成绩单,存储在 个长度为 n 的数组 scores 中,每个元素是 个学 的分数。 师 一 一 一 生 老 想要找出 所有满 scores[i] + scores[j] + scores[k] == 300 的三元组,其中 i < j < k。下 代码实现该功 足 面 能,请问其时间复杂度是( )。
int cnt = 0;
for (int i = 0; i < n; i++) {
for (int j = i + 1; j < n; j++) {
for (int k = j + 1; k < n; k++) {
if (scores[i] + scores[j] + scores[k] == 300) {
cnt++;
}
}
}
}
- A. O(n)
- B. O(n²)
- C. O(n³)
- D. O(2ⁿ)
正确答案:C