Java Collections Framework: Map. Частотный словарь.

Задача 1:

Получив на входе корпус языка (огромный набор атрибутированных текстов на каком-нибудь языке) построить частотный словарь. Знаки препинания, скобки, кавычки и числа должны быть удалены. Слова, содержащие в себе не буквенные символы, игнорируются целиком.

Задача 2:

При автоматическом переводе необходимо из нескольких слов выбрать наиболее употребительное. Необходимо построить эффективную реализацию функции, которая для данного множества (Set) слов-ключей, определит то, которому соответствует максимальное значение.

Ссылка на Ideone

2 thoughts on “Java Collections Framework: Map. Частотный словарь.

  1. Повторю замечание, что написал Бронфен-Бове:
    К сожалению, нет тестового ввода и вывода (можно для очень маленького файла) и пояснения – какие структуры данных используются. В частности, как упорядочены слова в Вашем словаре (если упорядочены вообще)?
    Очевидно, что Вы используете 2 структуры HashMap и TreeMap — и они отличаются в вышеприведенном аспекте — нужно пояснить почему они выбраны.

    Кстати, странно, что Вы выбрали тип Double для указания типа, у Вас может быть дробное количество слов. Особенно странно в ответе видеть строчку типа такой: 14.0 => to, of. Наверное: 14 => to, of. Кстати эта строчка пояснена очень туманно — только в комментарии «Бонусная часть». Почему это бонусная часть не совсем понятно, как по мне, это удобное представление ответа к задаче 1, а ни мою, ни тем более Игоря Евгеньевича задачу 2 Вы не решили.

    Еще странно, что версия на ideone не совпадает с версией в отчете. Какую мне проверять? Если хотите представить обе версии, то запишите в отчет их обе — или оставьте одну версию и в отчете и на ideone.

    А вот что понравилось — то, что Вы разобрались как работает метод useDelimiter для класса Scanner… Хотя чего это я Вас хвалю — на ideone у Вас неверный ответ (в словах присутствуют знаки препинания), а работает ли вариант из отчета, я не знаю.

    В общем поправьте отчет / решение — после этого засчитаю баллы.

Добавить комментарий

Ваш адрес email не будет опубликован.