Вопрос
1. Какая структура данных используется для реализации словаря в Python?
Ответ
Хэш-таблица.
Вопрос
2. Что такое коллизия и какие методы разрешения коллизий существуют?
Ответ
Коллизия возникает, когда два или более различных ключа дают одинаковый хэш. Методы разрешения: открытая адресация с линейным пробированием (если ячейка занята, алгоритм ищет следующую свободную) и метод цепочек (не актуален после Python 3.6).
Вопрос
3. Какие типы данных могут быть ключами и значениями в словаре?
Ответ
В ключе должны быть неизменяемые типы данных, в значении — любые.
Вопрос
4. Можно ли в качестве значения по умолчанию для аргумента функции задать список и почему это считается антипаттерном?
Ответ
Использование изменяемого…