Razlika Med Seznamom In Nizom

Kazalo:

Razlika Med Seznamom In Nizom
Razlika Med Seznamom In Nizom

Video: Razlika Med Seznamom In Nizom

Video: Razlika Med Seznamom In Nizom
Video: Сэм Харрис: Наука может дать ответ на вопросы морали. 2024, April
Anonim

Ključna razlika - seznam vs niz

Večina programskih jezikov uporablja polja za shranjevanje nabora podatkov iste vrste. Ena glavnih pomanjkljivosti nizov je, da po razglasitvi velikosti polja ni mogoče spreminjati. Če želi programer shraniti vrednosti, ki presegajo velikost polja, mora ustvariti novo polje in kopirati obstoječe elemente v novo polje. V teh primerih je mogoče uporabiti zbirke. S podporo zbirk je mogoče dodajati elemente, brisati elemente in številne druge operacije. V programskih jezikih, kot je Java, so na voljo različne vrste zbirk. Seznam in nabor sta vmesnika hierarhije zbirk. Osnovni vmesnik za druge vmesnike je Collection. Ključna razlika med seznamom in naborom je v tem, da seznam podpira shranjevanje istega elementa večkrat, medtem ko Set ne podpira shranjevanja istega elementa večkrat. Zatonabor ne dovoljuje podvajanja.

VSEBINA

1. Pregled in ključna razlika

2. Kaj je seznam

3. Kaj je nastavljeno

4. Podobnosti med seznamom in nizom

5. Vzporedna primerjava - Seznam in niz v tabelarnem obrazcu

6. Povzetek

Kaj je seznam?

Seznam je vmesnik, ki razširja vmesnik zbirke. V vmesniku za zbiranje obstaja več metod. Metoda dodajanja pomaga dodati element. 'Metoda odstranjevanja' je odstranitev elementa. Obstaja metoda "addAll" za dodajanje več elementov, metoda "removeAll" pa elemente iz zbirke. Metoda vsebuje pomaga ugotoviti, ali je določen predmet prisoten na seznamu ali ne. 'ContainsAll' je ugotoviti, ali je v zbirki prisoten nabor predmetov. Metoda iteratorja se uporablja za zanko med elementi na seznamu. Ko seznam razširja zbirko, vsi načini zbiranja pripadajo seznamu. Razen teh metod ima seznam tudi metode, kot sta get in set. Programer lahko z metodo get dobi vrednost v določenem indeksu. Programer lahko z nastavljeno metodo nastavi vrednost na določen indeks.'IndexOf' se uporablja za iskanje indeksa elementa.

Na seznamu lahko operacije izvajate glede na položaj. Programer lahko zagotovi podatkovni element, ki ga je treba dodati v indeks. Torej bo dodan določenemu indeksu. Če programer ne poda indeksa, bo element dodan na konec seznama. Ohranja tudi vstavljeni vrstni red. Če je dodan element 1 in nato element2, bo element1 pred elementom2.

Razlika med seznamom in nizom
Razlika med seznamom in nizom

Slika 01: Seznam in niz

ArrayList, LinkedList, Vector so nekateri razredi, ki izvajajo List. V ArrayList je dostop do elementa hiter, vstavljanje in brisanje pa nižje. ArrayList ni varen za nit. Dostop do istega seznama ArrayList iz več niti morda ne bo dal enakega rezultata. V LinkedList so elementi povezani tako nazaj kot naprej. Vstavljanje in brisanje elementov s pomočjo povezanega seznama je hitrejše od seznama ArrayList. LinkedList izvaja seznam in oboje. Vector je podoben ArrayList, vendar je varen proti tekalni plasti, ker so vse metode sinhronizirane.

Kaj je Set?

Set je vmesnik, ki razširja vmesnik zbirke. Ker Set vmesnik razširja Collection, vsi načini Collection spadajo tudi v Set. Set ne podpira podvajanja vrednosti. Zato programer ne more dvakrat shraniti istega elementa. Vzdržuje edinstven nabor elementov. Vmesnik SortedSet razširja vmesnik Set. SortedSet ohranja elemente v razvrščenem vrstnem redu. Vmesnik NavigableSet razširja SortedSet. NavigableSet ponuja navigacijske metode, kot so spodnja, talna, stropna itd.

HashSet, LinkedHashSet in TreeSet so nekateri razredi, ki izvajajo vmesnik Set. HashSet izvaja Set vmesnik. Vstavljenega vrstnega reda ne vzdržuje. Če so vrednosti vstavljene kot a, x, b, se lahko shrani kot, x, a, b. LinkedSet ohrani vstavljeni vrstni red. Če so elementi vstavljeni v zaporedju a, x, b, bo vrstni red shranjevanja a, x, b. TreeSet izvaja Set in NavigableSet. Ne vzdržuje vrstnega reda vstavljanja, ampak elemente shrani v razvrščenem vrstnem redu. Če je vstavljeni vrstni red a, c, b, bodo elementi shranjeni kot a, b, c. Vsi HashSet, LinkedHashSet in TreeSet ne bodo imeli podvojenih elementov.

Kakšne so podobnosti med seznamom in nizom?

  • Vmesnika List in Set razširita vmesnik Collection.
  • List in Set podpirata operacije, kot sta dodajanje in odstranjevanje elementov.

Kakšna je razlika med seznamom in nizom?

Seznam vs Set

List Interface je podvmesnik zbirke, ki vsebuje metode za izvajanje operacij, kot so vstavljanje, brisanje na podlagi indeksa. Set Interface je podvmesnik zbirke, ki vsebuje metode za izvajanje operacij, kot so vstavljanje, brisanje elementov in ohranjanje edinstvenih elementov.
Predavanja
ArrayList, Vector in LinkedList so razredi, ki izvajajo vmesnik List. HashSet, LinkedHashSet in TreeSet so razredi, ki izvajajo vmesnik Set.
Podvajanje elementov
Seznam podpira podvajanje elementov. Set ne podpira podvajanja elementov. Elementi so unikatni.

Povzetek - Seznam vs niz

Zbirke se uporabljajo za dinamično shranjevanje elementov. Programski jeziki, kot je Java, nudijo vmesnik Collection. List in Set sta dva vmesnika, ki pripadata vmesniku Collection. Oba vmesnika razširita zbirko. Ta članek je obravnaval razliko med seznamom in naborom. Ključna razlika med seznamom in naborom je v tem, da seznam podpira večkratno shranjevanje istega elementa, medtem ko Set ne podpira večkratnega shranjevanja istega elementa. Set vedno vsebuje edinstvene elemente.

Priporočena: