Junior — Middle
Kuris kolekcijos tipas yra geriausias efektyviai pridėti elementus į struktūros vidurį?
sobes.tech AI
Atsakymas iš AI
Efektyvių elementų pridėjimas į struktūros vidurį Java yra geriausiai pasiekiamas naudojant LinkedList kolekciją.
LinkedList įgyvendina dvipusį susietą sąrašą, leidžiantį įterpti elementus bet kurioje sąrašo vietoje per O(1) laiką, jei turite nuorodą į reikalingą mazgą. Skirtingai nuo ArrayList, kur įterpimas į vidurį reikalauja elementų perkėlimo ir užtrunka O(n).
LinkedList naudojimo pavyzdys:
import java.util.LinkedList;
LinkedList<String> list = new LinkedList<>();
list.add("A");
list.add("B");
list.add("D");
// Įterpkite "C" į poziciją 2 (tarp B ir D)
list.add(2, "C");
System.out.println(list); // [A, B, C, D]
Jei dažnai reikia pasiekti elementus pagal indeksą, atkreipkite dėmesį, kad prieiga prie LinkedList yra O(n), skirtingai nei ArrayList, kuris yra O(1).