Расчет сложности пространства для циклов - PullRequest
0 голосов
/ 14 апреля 2020

У меня есть фрагмент кода, сложность которого нужно вычислить в нотации Big-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).

I думаю, что ответ должен быть O (max (M, N)), но ответ в моем учебнике O (1). Разве пространство не должно зависеть от N и M?

1 Ответ

1 голос
/ 14 апреля 2020

Сложность пространства здесь не зависит от N и M. Сложность пространства зависит от int, поэтому Сложность пространства равна O(1).
Сложность времени равна O(max(M,N)) и O(n) достаточно, не нужно слишком много деталей (я имею в виду здесь max (M, N))

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...