Ответ
LinkedList стоит использовать, когда операции вставки/удаления происходят часто, особенно в начале/середине списка, т.к. в LinkedList они выполняются за O(1) (если есть ссылка на нужный узел). В ArrayList эти операции требуют O(n) из-за сдвига элементов.
Пример:
val linkedList = LinkedList<String>()
linkedList.add("A") // O(1)
linkedList.add(1, "B") // O(n) - поиск позиции
linkedList.removeFirst() // O(1)
Но для доступа по индексу (get/set) LinkedList плох - O(n) против O(1) у ArrayList. Также LinkedList потребляет больше памяти из-за хранения ссылок. В большинстве случаев ArrayList предпочтительнее.
Видео-ответы
▶
Java middle+ mock interview
▶
Техническое собеседование Java Developer | Топ вопросы Java | Подготовка к интервью
▶
Собеседование Java Junior | Подготовка к реальному собеседованию | Jetbulb
▶
Проводим собеседование в Android-команду Тинькофф в прямом эфире
▶
Михаил - Automation QA мок собеседование (часть 1)
▶
Mock-Собеседование на позицию Java Junior Developer. Часть 1.
▶
Техническое интервью Java Developer - Артем Никулин