Коллекции middle
Как устроен HashMap? Что такое bucket, как разрешаются коллизии?
Ответ
Массив связных списков (Node[]). Бакет = ячейка массива. Коллизия → цепочка.
Разбор: HashMap — это массив Node[], где бакет это одна ячейка массива, а коллизии разрешаются цепочкой (связным списком), которая при достаточной длине и ёмкости превращается в дерево. Ловушки: открытая адресация с пробированием — это другая стратегия, в HashMap её нет; бакеты не являются деревьями изначально (дерево появляется лишь при TREEIFY_THRESHOLD); и вложенных массивов внутри бакета не существует.
Хочешь так же по своей компании — с вопросами по грейдам и задачами? Закажи гайд или забери свежее в Telegram.