Рубрики

Алгоритмы | Анализ алгоритмов | Вопрос 1

Какова временная сложность веселья ()?

int fun(int n)

{

  int count = 0;

  for (int i = n; i > 0; i /= 2)

     for (int j = 0; j < i; j++)

        count += 1;

  return count;

}

(A) O (n ^ 2)
(B) O (nLogn)
(C) O (n)
(D) O (nLognLogn)

Ответ: (с)
Объяснение: Для входного целого числа n самый внутренний оператор fun () выполняется в следующий раз.

n + n / 2 + n / 4 +… 1

Рекомендуемые посты:

Алгоритмы | Анализ алгоритмов | Вопрос 1

0.00 (0%) 0 votes