Встречается на 2% собеседований по Java
Когда возникает коллизия
Коллизия возникает, когда два разных ключа хеш-таблицы (например, HashMap) дают одинаковый хеш-код. Это приводит к тому, что оба ключа пытаются занять одну и ту же ячейку (бакет).
В Java коллизии обрабатываются через:
- Цепочки (chaining) — элементы с одинаковым хешом хранятся в виде связанного списка или дерева (в Java 8+ при большом количестве коллизий).
- Открытую адресацию (open addressing) — поиск следующей свободной ячейки.
Пример:
java
Map<String, Integer> map = new HashMap<>();
map.put("Aa", 1); // Хеш "Aa" = 2112
map.put("BB", 2); // Хеш "BB" = 2112 → коллизия!Решение:
- Переопределять
hashCode()иequals()корректно. - Использовать
LinkedHashMapилиTreeMap, если порядок или сортировка критичны.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы