计算 for 循环的 space 复杂度
Calculating the space complexity of for loops
我有一段代码,其中 space 复杂度要用大 O 表示法计算
int a = 0, b = 0;
for (i = 0; i < N; i++) {
a = a + rand();
}
for (j = 0; j < M; j++) {
b = b + rand();
}
rand()
是一个 O(1) space。
我认为答案应该是 O(max(M,N)) 但我教科书上的答案是 O(1)。
space 不应该依赖于 N 和 M 吗?
Space这里的复杂度不依赖于N和M。Space复杂度取决于int
所以Space复杂度 是 O(1)
.
时间复杂度是O(max(M,N))
,O(n)
就够了,不需要太多细节(我指的是这里的max(M,N))
我有一段代码,其中 space 复杂度要用大 O 表示法计算
int a = 0, b = 0;
for (i = 0; i < N; i++) {
a = a + rand();
}
for (j = 0; j < M; j++) {
b = b + rand();
}
rand()
是一个 O(1) space。
我认为答案应该是 O(max(M,N)) 但我教科书上的答案是 O(1)。 space 不应该依赖于 N 和 M 吗?
Space这里的复杂度不依赖于N和M。Space复杂度取决于int
所以Space复杂度 是 O(1)
.
时间复杂度是O(max(M,N))
,O(n)
就够了,不需要太多细节(我指的是这里的max(M,N))