Articles

singly Linked List in JavaScript

to have a clear understanding of singly linked list, I ’ ll implement LinkedList class in JavaScript.

jokaisella linkitetyn listan solmulla on kaksi attribuuttia: arvo & Seuraava, ja linkitetyllä listalla on pää, häntä ja pituus-attribuutti.

https://gist.github.com/GAierken/eb9583bc1ffa78b8e1bb7438a7a49014

Push

miten voimme työntää uuden solmun listamme loppuun? Tehdään työntötoiminto. Ensinnäkin meidän täytyy luoda uusi solmu käyttäen annettua arvoa, tarkista, onko luettelossa Pää (onko se tyhjä?) ja älä unohda kasvattaa listan kokoa.

https://gist.github.com/GAierken/4e44162c8fefe746680e67ea65bf9397

Pop

työntämällä pitää miettiä poppaamista, viimeisen elementin poistamista. Jos ei ole solmua, palata määrittelemätön, muuten, silmukka läpi listan kunnes saavutamme häntä, aseta seuraava ominaisuus toiseksi viimeinen solmu on nolla, tee toiseksi viimeinen on häntä, älä unohda säätää koko luettelon.

https://gist.github.com/GAierken/2c24fecb26f7453879ab471190fcba1e

Shift

ensimmäisen elementin poistamiseksi, siirtäen, kuten tavallista, tarkista, onko lista tyhjä. Ensimmäinen, tallentaa nykyisen pään muuttuja, aseta pää on nykyisen pään seuraava, decrement pituus.

https://gist.github.com/GAierken/e6a11cdaf63d9620db33cef58d0a9507

Unshift

Jos haluat lisätä solmun luettelon alkuun, tarkista, onko lista tyhjä, jos ei, asetamme nykyisen pään seuraava attribuutti saapuvan solmun, koon kasvattaminen.

https://gist.github.com/GAierken/95cbf790f1b6e03711f2460eb7951aa4

Get

vaikka linkitetyllä listalla ei ole indeksejä, pystymme silti löytämään solmun annetulla indeksillä. Varmista ensin, että annettu indeksi on suurempi kuin nolla ja pienempi tai yhtä pitkä luettelo. Kuin kierrämme listan läpi, kunnes pääsemme indeksiin.

https://gist.github.com/GAierken/6475bb388fe8b0f2b7f6507bb3cab446

Set

Mitä jos haluamme muuttaa listan solmua? Löydämme solmu get (), ja asettaa solmu annettujen tietojen.

https://gist.github.com/GAierken/e9b0bb11849219914e2b3ee7b215d5d2

Kun haluamme lisätä luetteloon uuden solmun, tarkista ensin, onko indeksi suurempi kuin 0 ja pienempi kuin pituus. Jos indeksi on pituus, käytämme vain push (), jos indeksi on 0, käytämme unshift (). Muiden indeksien, meidän täytyy saada solmu indeksissä-1, ja asettaa seuraava ominaisuus, että solmu on uusi solmu, ja seuraava ominaisuus uuden solmun on edellinen seuraava ominaisuus, niin me lisätä pituus.

https://gist.github.com/GAierken/08c88867ddb514de6ef4ddb3923a4117

Poista

toisin kuin pop ja unshift, remove-funktio poistaa solmun annetulla indeksillä. Kuten tavallista, tarkista, onko indeksi voimassa, jos indeksi on Pituus – 1 tai 0, käytä pop tai shift. Muussa tapauksessa saamme solmun indeksissä-1, Aseta seuraava ominaisuus, että solmu on seuraava seuraavan ominaisuuden jälkeen, me vähennämme kokoa.

https://gist.github.com/GAierken/e888104f65a836925b11e102584edd76

Käänteinen

lopullinen Käänteinen kysymys! Miten kumoamme listan? Ensin vaihdamme pään ja hännän, julistamme seuraavan ja edellisen, asetamme edellisen nolliksi. Käymme listan läpi.

https://gist.github.com/GAierken/556c13f4ccbc5bcd49584bd662b553de