Sobes.tech
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).