Это, по-видимому, вопрос интервью (найденный в сборнике вопросов для интервью), но даже если это не очень круто.
Нам говорят, что мы делаем это эффективно во всех мерах сложности. Я думал о создании HashMap, который отображает слова на их частоту. Это будет O (n) во времени и пространстве, но поскольку может быть много слов, мы не можем предположить, что мы можем хранить все в памяти.
Я должен добавить, что ничто в вопросе не говорит о том, что слова не могут быть сохранены в памяти, но что, если это так? Если это не так, то вопрос не кажется сложным.