Golang_HomeWork/hw03_frequency_analysis/README.md

38 lines
2.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

## Домашнее задание №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`