Sobes.tech
Назад к вопросам
Junior — Middle
64

Какой тип коллекции предпочтителен для быстрого добавления элементов в середину структуры данных?

Компании, где спрашивали
ООО Антара

Ответ от нейросети

sobes.tech AI

Для быстрого добавления элементов в середину структуры данных в Java предпочтительна коллекция LinkedList. В отличие от ArrayList, где вставка в середину требует сдвига элементов и имеет сложность O(n), LinkedList реализован как двусвязный список, что позволяет вставлять элементы за O(1), если известна позиция узла (или O(n) для поиска позиции).

Пример использования LinkedList:

LinkedList<String> list = new LinkedList<>();
list.add("A");
list.add("B");
// Вставка элемента "C" в середину
ListIterator<String> iterator = list.listIterator(1);
iterator.add("C");

Таким образом, для частых вставок в середину лучше использовать LinkedList.