intermediate
Tries
Prefix trees для автодополнения, словарей, word search и memory-heavy индексации строк.
Trie хранит strings как путь по символам, поэтому prefix queries зависят от длины prefix, а не от числа stored words. Он полезен для autocomplete, dictionary validation, word search и grouping by prefix, но может потреблять намного больше memory, чем sorted array или hash set.
Компромисс: сравните время, память и сложность реализации до выбора структуры или паттерна.
На интервью: Интервьюеры проверяют, можете ли вы спроектировать nodes, отметить terminal words и рассуждать о branching factor и memory.
Типовые ошибки: Не используйте trie, когда exact lookup в Set достаточно. Нормализуйте case и Unicode rules перед сравнением реальных user-facing strings.
Чеклист:
- Отмечайте terminal nodes.
- Считайте memory per edge.
- Уточните alphabet size.
- Предпочитайте Set только для exact lookup.