Sobes.tech
Junior — Middle

Ce tip de colecție este cel mai potrivit pentru adăugarea eficientă a elementelor în mijlocul structurii?

sobes.tech AI

Răspuns de la AI

Pentru adăugarea eficientă a elementelor în mijlocul unei structuri în Java, cea mai potrivită colecție este LinkedList.

LinkedList implementează o listă dublu înlănțuită, ceea ce permite inserarea elementelor oriunde în listă în timp O(1), dacă există o referință la nodul necesar. Spre deosebire de ArrayList, unde inserarea în mijloc necesită deplasarea elementelor și durează O(n).

Exemplu de utilizare a LinkedList:

import java.util.LinkedList;

LinkedList<String> list = new LinkedList<>();
list.add("A");
list.add("B");
list.add("D");

// Inserăm "C" în poziția 2 (între B și D)
list.add(2, "C");

System.out.println(list); // [A, B, C, D]

Dacă trebuie să accesezi frecvent elemente după index, trebuie să ții cont că accesul la LinkedList are O(n), spre deosebire de ArrayList, care are O(1).