2020-05-26 21:16:56 +03:00

38 lines
2.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## Домашнее задание №3 «Частотный анализ»
Необходимо написать Go функцию, принимающую на вход строку с текстом и
возвращающую слайс с 10-ю наиболее часто встречаемыми в тексте словами.
* Если есть более 10 самых частотых слов (например 15 разных слов встречаются ровно 133 раза,
остальные < 100), можно вернуть любые 10 из самых частотных.
* Словоформы не учитываем. "нога", "ногу", "ноги" - это разные слова.
* Слово с большой и маленькой буквы считать за разные слова.
"Нога" и "нога" - это разные слова.
* Знаки препинания считать "буквами" слова или отдельными словами.
"-" (тире) - это отдельное слово. "нога," и "нога" - это разные слова.
Пример: "cat and dog, one dog,two cats and one man".
"and", "one", "dog," - встречаются 2, 2 и 1 раз, это топ-3.
При необходимости можно выделять дополнительные функции / ошибки.
**(*) Дополнительное задание: учитывать большие/маленькие буквы и знаки препинания:**
* "Нога" и "нога" - это одинаковые слова, "нога!", "нога" и " 'нога' " - это одинаковые слова;
* "какой-то" и "какойто" - это разные слова, "—" (тире) - это не слово.
### Критерии оценки
- Пайплайн зелёный - 4 балла
- Добавлены новые юнит-тесты - до 4 баллов
- Понятность и чистота кода - до 2 баллов
- Дополнительное задание на баллы не влияет
#### Зачёт от 7 баллов
### Подсказки
- `regexp.MustCompile`
- `strings.Split`
- `sort.Slice`