pb1a38a600

Common mistakes in word frequency counting

Nov 7th, 2026
2
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.16 KB | None | 0 0
  1. Common mistakes in word frequency counting
  2.  
  3. Каждая учебная задача таит пару-тройку грабель; вот они.
  4.  
  5. Задача
  6.  
  7. Дан текст. Посчитать, сколько раз встречается каждое слово, и вывести слова по убыванию частоты.
  8.  
  9. Решение
  10.  
  11. ``python
  12. from collections import Counter
  13.  
  14. def word_count(text: str) -> list[tuple[str, int]]:
  15. words = text.lower().split()
  16. return Counter(words).most_common()
  17.  
  18. print(word_count("a b a c b a"))
  19. `
  20.  
  21. Как это работает
  22.  
  23. Текст разбивается на слова, Counter подсчитывает вхождения за линейное время, а most_common() сразу возвращает отсортированный список пар.
  24.  
  25. Пример работы
  26.  
  27. `text
  28. [('a', 3), ('b', 2), ('c', 1)]
  29. ``
  30.  
  31. Сложность
  32.  
  33. O(n) по времени по числу слов, O(k) по памяти по числу уникальных.
  34.  
  35. Частые ошибки
  36.  
  37. 1. Не обрабатывать крайние случаи. Пустой ввод, ноль, отрицательные числа — именно там решение чаще всего ломается.
  38. 2. Смешивать типы данных. Строки и числа ведут себя по-разному; неявное приведение типов — источник неочевидных багов.
  39. 3. Писать код без проверки на маленьких примерах. Прогоните решение вручную на 2-3 значениях, прежде чем считать задачу решённой.
  40.  
  41. Заметив такую ошибку в чужом коде, вы уже мыслите как ревьюер.
  42.  
  43. View Full Gallery → https://go.cbrop.com/prse
  44.  
  45. Related:
  46.  
  47. https://contracosta.news/wp-content/uploads/event-manager-uploads/event_banner/2026/11/indian-girl-outdoor-sex-caught-by-villag-3fd860.pdf
  48. https://slugpost.com/brackets-tests-lw45m
  49. https://gall.dcinside.com/mgallery/board/view/?id=thekpop&no=64473
  50. https://pastebin.com/BMwUgrRc
  51. https://sway.cloud.microsoft/yPDLFXGX2VDpt7V1
  52.  
Add Comment
Please, Sign In to add comment