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

Где быстрее выполнится операция вставки элемента в середину: в ArrayList или LinkedList

В `LinkedList` вставка в середину будет быстрее, чем в `ArrayList`, так как `LinkedList` реализован на основе двусвязного списка. Вставка требует лишь обновления ссылок соседних элементов (O(1) при известной позиции, но O(n) на поиск позиции). `ArrayList` же использует массив, и вставка в середину требует сдвига всех последующих элементов (O(n)), плюс возможное расширение массива. **Пример:** ```java List arrayList = new ArrayList<>(Arrays.asList(1, 2, 4, 5)); arrayList.add(2, 3); // Сдвигает элементы 4 и 5 List linkedList = new LinkedList<>(Arrays.asList(1, 2, 4, 5)); linkedList.add(2, 3); // Меняет ссылки у 2 и 4 ``` Если позиция уже известна (например, через `listIterator`), `LinkedList` будет эффективнее.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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