так что я получил этот алгоритм, мне нужно рассчитать его сложность времени
, который выглядит как
for i=1 to n do
k=i
while (k<=n) do
FLIP(A[k])
k = k + i
, где A
- массив логических значений, а FLIP, как есть, переворачивает текущее значение. следовательно, это O(1)
.
Теперь я понимаю, что внутренний цикл while должен называться
n/1+n/2+n/3+...+n/n
Если я прав, но есть ли формула для такого расчета?
довольно запутан здесь
спасибо!