@bondle

Чему будет равна сложность этого алгоритма?

Код, который внутри цикла, вызывает функцию сортировки со сложностью O(n log n):

for item in N:
   sort(item)
   ...

С одной стороны кажется, что сложность N, но каждую итерацию мы вызываем n log n, значит это O(n^2 log n)? Какова будет его сложность?
  • Вопрос задан
  • 175 просмотров
Пригласить эксперта
Ответы на вопрос 1
wataru
@wataru Куратор тега Алгоритмы
Разработчик на С++, экс-олимпиадник.
Зависит от размеров item. Если они там каждый O(N) размера, то ваша догадка правильная: O(n^2 log n).

Если же все item суммарно не превосходят N, то ответ O(N log N). Потому что если их размеры a_i, то у вас сумма ai log ai. log(ai) можно сверху ограничить log(N) и вынести за скобки и потом заменить сумму в скобках на N.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы