В чём разница: Коллекции: ArrayList vs LinkedList vs HashMap?

Ответ

ArrayList: динамический массив, O(1) доступ, O(n) вставка в середину. LinkedList: двусвязный список, O(1) вставка/удаление у известного узла, O(n) доступ. HashMap: бакеты + связный список (метод цепочек) → дерево при ≥8 коллизиях.

Разбор: ArrayList — массив с O(1) доступом по индексу и O(n) вставкой в середину (сдвиг); LinkedList — двусвязный список с O(1) вставкой/удалением у известного узла и O(n) доступом; HashMap хранит бакеты со связными списками, превращая их в дерево при ≥8 элементах. Дистракторы переставляют сложности (O(1) доступ — у ArrayList, а не у LinkedList), искажают порог treeification и приписывают HashMap открытую адресацию, хотя в JDK используется метод цепочек.

Хочешь так же по своей компании — с вопросами по грейдам и задачами? Закажи гайд или забери свежее в Telegram.

Заказать гайд Пройти тест
новые гайды и свежие вопросы с собесов — первыми в Telegram Смотреть гайды Подписаться