Встречается на собеседованиях • сегодня

Что такое Коллизия

Коллизия в Python (и в целом в программировании) возникает, когда два разных объекта имеют одинаковый хеш-код, что может привести к конфликту при использовании хеш-таблиц (например, в словарях или множествах).

Пример с словарем:

python
class BadHash:
    def __hash__(self):
        return 42  # Все экземпляры будут иметь одинаковый хеш

a = BadHash()
b = BadHash()
d = {a: 'a', b: 'b'}  # Коллизия - оба ключа имеют hash=42

Последствия:

  • Снижение производительности (поиск в словаре деградирует до O(n))
  • Возможна потеря данных (если объекты еще и равны через eq)

Python сам обрабатывает коллизии, но лучше их избегать, реализуя хорошие хеш-функции.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы