Skirtumas tarp ArrayList ir LinkedList

Pagrindinis skirtumas - „ArrayList“ vs „LinkedList“
 

Kolekcijos yra naudingos duomenims saugoti. Įprastame masyve masyvo dydis yra fiksuotas. Kartais reikalaujama sukurti masyvus, kurie galėtų augti pagal poreikį. Programavimo kalbos, tokios kaip „Java“, turi kolekcijas. Tai yra sistema su klasių rinkiniu ir sąsajomis. Tai tarnauja kaip elementas grupei elementų. Kolekcijos leidžia saugoti, atnaujinti, nuskaityti elementų rinkinį. Tai padeda dirbti su duomenų struktūromis, tokiomis kaip sąrašai, rinkiniai, medžiai ir žemėlapiai. Sąrašas yra kolekcijos sąsajos sąsaja. „ArrayList“ ir „LinkedList“ yra dvi kolekcijų sistemos klasės. Jie įgyvendina rinkimo sąsają ir Sąrašo sąsają. Šiame straipsnyje aptariamas skirtumas tarp „ArrayList“ ir „LinkedList“. „ArrayList“ yra klasė, praplečianti „AbstractList“ ir įgyvendinanti Sąrašo sąsają, kuri viduje naudoja dinaminį masyvą duomenų elementams saugoti. „LinkedList“ yra klasė, praplečianti „AbstractSequentialList“ ir įgyvendinanti sąsajas „List“, „Deque“ ir „Queue“, kurios viduje naudoja dvigubai susietą sąrašą duomenų elementams saugoti.. Tai yra pagrindinis skirtumas tarp „ArrayList“ ir „LinkedList“.

TURINYS

1. Apžvalga ir svarbiausias skirtumas
2. Kas yra „ArrayList“
3. Kas yra „LinkedList“
4. „ArrayList“ ir „LinkedList“ panašumai
5. Šalutinis palyginimas - lentelės forma „ArrayList vs LinkedList“
6. Santrauka

Kas yra „ArrayList“?

„ArrayList“ klasė naudojama dinaminiams masyvams kurti. Skirtingai nuo įprasto masyvo, dinaminio masyvo dydis nėra fiksuotas. Objektui, sukurtam naudojant „ArrayList“ klasę, leidžiama saugoti elementų rinkinį sąraše. Talpa padidėja automatiškai, todėl programuotojas gali įtraukti elementus į sąrašą. „ArrayList“ klasė pratęsia „AbstractList“ klasę, įgyvendinančią Sąrašo sąsają. Todėl Sąrašo sąsajos metodus gali naudoti „ArrayList“. Norint pasiekti elementus, naudojamas metodas get (). Pridėti () metodą galima naudoti norint įtraukti elementus į sąrašą. Elementas pašalinamas iš sąrašo. Peržiūrėkite žemiau pateiktą programą.

01 paveikslas: „ArrayList“ pavyzdys

Pagal aukščiau pateiktą programą sukuriamas „ArrayList“ objektas. Naudojant pridėjimo metodą, elementus galima pridėti dinamiškai. Elementai „A“, „B“, „C“, „D“ ir „E“ pridedami pridėjimo metodu. Šalinimo metodas naudojamas elementui pašalinti iš sąrašo. Pereinant 4 prie šalinimo metodo, 4 sąrašo raidė, kuri yra „E“, iš sąrašo išbraukiama. Kai kartojate sąrašą naudodama for kilpą, bus atspausdintos raidės A, B, C ir D.

Kas yra „LinkedList“?

Panašiai kaip „ArrayList“, „LinkedList“ naudojamas dinaminiams duomenų elementams saugoti. Objektui, sukurtam naudojant „LinkedList“ klasę, leidžiama saugoti elementų rinkinį sąraše. Talpa padidėja automatiškai, todėl programuotojas gali įtraukti elementus į sąrašą. Duomenims saugoti jis naudoja dvigubai susietą sąrašą. Dvigubai susietame sąraše duomenys saugomi kaip mazgai. Kiekviename mazge yra dvi nuorodos. Pirmoji nuoroda nurodo į ankstesnį mazgą. Sekanti nuoroda nurodo seką į kitą mazgą.

„LinkedList“ klasė praplečia „AbstractSequentialList“ klasę ir įgyvendina Sąrašo sąsają. Todėl Sąsajos sąsajos metodus gali naudoti „LinkedList“. Gauti () metodą galima naudoti norint pasiekti sąrašo elementus. Pridėti () metodą galima naudoti norint įtraukti elementus į sąrašą. Elementas pašalinamas iš sąrašo. Peržiūrėkite žemiau pateiktą programą.

02 paveikslas: „LinkedList“ pavyzdys

Pagal aukščiau pateiktą programą sukuriamas „LinkedList“ objektas. Naudojant pridėjimo metodą, elementus galima pridėti dinamiškai. Elementai „A“, „B“, „C“, „D“ ir „E“ pridedami pridėjimo metodu. Šalinimo metodas naudojamas elementui pašalinti iš sąrašo. Kai pereinate 4 prie šalinimo metodo, 4 sąrašo raidė „E“ pašalinama iš sąrašo. Kai kartojate naudodamiesi kilpa, bus atspausdintos raidės A, B, C ir D.

Kokie yra „ArrayList“ ir „LinkedList“ panašumai?

  • Tiek „ArrayList“, tiek „LinkedList“ įgyvendina sąrašo sąsają.
  • Tiek „ArrayList“, tiek „LinkedList“ gali sudaryti pasikartojančius elementus.
  • Tiek „ArrayList“, tiek „LinkedList“ palaiko įterpimo tvarką.

Kuo skiriasi „ArrayList“ ir „LinkedList“?

„ArrayList“ vs „LinkedList“

„ArrayList“ yra klasė, praplečianti „AbstractList“ ir įgyvendinanti Sąrašo sąsają, kuri viduje naudoja dinaminį masyvą duomenų elementams saugoti.. „LinkedList“ yra klasė, praplečianti „AbstractSequentialList“ ir įgyvendinanti sąsajas „List“, „Deque“, „Queue“, kuri viduje naudoja dvigubai susietą sąrašą duomenų elementams saugoti..
 Prieiga prie elementų
Prieiga prie „ArrayList“ elementų yra greitesnė nei „LinkedList“. Prieiga prie „LinkedList“ elementų yra lėtesnė nei „ArrayList“.
Manipuliuojantys elementai
„ArrayList“ elementų valdymas yra lėtesnis nei „LinkedList“. Manipuliuoti „LinkedList“ elementais galima greičiau nei „ArrayList“.
 Elgesys
„ArrayList“ pasirodo kaip sąrašas. „LinkedList“ pasirodo kaip sąrašas ir eilė.

Santrauka - „ArrayList“ vs „LinkedList“

Kolekcijos sistema leidžia dirbti su duomenų struktūromis, tokiomis kaip sąrašai, medžiai, žemėlapiai ir rinkiniai. Sąrašas yra kolekcijos sąsajos sąsaja. Šiame straipsnyje buvo aptariamas skirtumas tarp „ArrayList“ ir „LinkedList“. „ArrayList“ yra klasė, praplečianti „AbstractList“ ir įgyvendinanti Sąrašo sąsają, kuri viduje naudoja dinaminį masyvą duomenų elementams saugoti. „LinkedList“ yra klasė, praplečianti „AbstractSequentialList“ ir įgyvendinanti sąsajas „List“, „Deque“, „Queue“, kuri viduje naudoja dvigubai susietą sąrašą duomenų elementams saugoti. Tai yra skirtumas tarp „ArrayList“ ir „LinkedList“.

Nuoroda:

1.Įžanga į susietą sąrašą | Duomenų struktūros mokymo programa | Studijų naktis. Galima rasti čia
2. „LinkedList Java“ - „javatpoint“. “,„ The Point “, prieinamas čia
3. „Java ArrayList“ klasė - „javatpoint“. “ Taškas, prieinamas čia