Вопросы:
Предположим, у нас был алгоритм, который принимал массив строк, сортировал каждую строку, а затем сортировал полный массив. Каким будет время выполнения?
Решение дано ниже:
![enter image description here](https://i.stack.imgur.com/PJmFS.jpg)
Что я нахожу особенным в приведенном выше решении, так это: "You should also take into account that you need to compare the strings. Each string comparison takes O (s) time.There are O (a log a) comparisons, therefore this will take O (a*s log a) time."
Для чего нам нужны сравнения?
Потребуется s log s
время для сортировки строки. Скажем, a
строк, следовательно, общее время будет a*s log s
Теперь проблема сократилась до простой сортировки заданного массива, которую вы можете сделать за a log a
времени, следовательно, общее время, которое вы взяли a*s log s + a log a = a (s log s + log a)
Где я ошибся в своем мыслительном процессе?
Вопрос взят из книги, Взлом Интервью Кодирования