计算 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))