Implementering av Stack i JavaScript

Implementering Av Stack I Javascript



Stabler er lineære datastrukturer som følger LIFO-prinsippet. LIFO står for sist inn først ut, noe som betyr at det sist lagt til elementet er det første som skal fjernes. Denne datastrukturen kalles stabel som en analogi til stabler i den virkelige verden, for eksempel en stabel med informasjonskapsler i en kakeboks eller en stabel med bøker i en bokhylle. I stabel kan innsetting og ekstraksjon bare gjøres i den ene enden, dvs. toppen av stabelen. For eksempel, hvis vi ønsker å spise en informasjonskapsel, får vi den øverste først og deretter den andre og så videre.

Dette innlegget vil handle om implementeringen av stack i JavaScript. Når vi jobber med JavaScript, vil vi ikke være bekymret for størrelsen på stabelen ettersom størrelsen på JavaScript-objektene kan vokse dynamisk.







Implementering av Stack i JavaScript

Vi vil bruke en JavaScript-klasse for å implementere stackdatastrukturen. De stable klasse vil inneholde en matrise i sin konstruktør som vil bli brukt til å lagre elementer i stabelen. Klassen vil også definere forskjellige metoder som vil bli brukt til å manipulere dataene som er lagret inne i stabelen. De mest grunnleggende metodene for matrisen er sett inn() og ekstrakt() metoder som brukes til å legge til og fjerne elementer fra toppen av stabelen.



De stable klasse definerer også andre metoder som f.eks kikke() , er tom() , klar() , skrive ut() og størrelse() også:



klassestabel {
konstruktør ( ) {

dette.elementer = [ ] ;

}

// Plasserer et element på toppen av stabelen

sett inn ( element ) {

denne.elementene.push ( element ) ;

}

// Fjerner et element fra toppen av stabelen

ekstrakt ( ) {

denne.elementer.pop ( ) ;

}

// Returnerer det øverste elementet i stabelen

titt ( ) {

komme tilbake dette.elementer [ this.elements.length - 1 ] ;

}
// Sjekker hvis stabelen er tom

er tom ( ) {

komme tilbake this.elements.length == 0 ;

}

// Skriver ut hele stabelen

skrive ut ( ) {
til ( la jeg = 0 ; Jeg < denne.elementene.lengde; i++ ) {
console.log ( dette.elementer [ Jeg ] ) ;
}

}
// Returnerer størrelse av stabelen

størrelse ( ) {

komme tilbake denne.elementene.lengde;

}

// rydder stabelen

klar ( ) {
dette.elementer = [ ] ;
}

}





Skyve og poppe elementer fra stabelen

Den mest grunnleggende operasjonen til stabelen er å sette inn og trekke ut elementer fra toppen av stabelen. Stabelklassen gir to metoder for disse operasjonene:


Den første linjen i den ovennevnte koden erklærer en ny stabel kalt s . Og så sett inn() metoden brukes til å sette inn fire elementer i stabelen, hvorav to deretter fjernes av ekstrakt() metode.



Hvordan få toppelementet fra stabelen

De stable klasse definerer kikke() metode for å få toppelementet fra stabelen:


Hvordan sjekke om stabelen er tom?

Klassen definerer også en metode som kan brukes til å sjekke om stabelen er tom:


Hvordan skrive ut hele stabelen?

De skrive ut() metoden kan kalles for å skrive ut hele stabelen


Hvordan sjekke størrelsen på stabelen?

De størrelse() metoden bruker .lengde egenskap for å få størrelsen på stabelen:


Hvordan tømme hele stabelen?

Bare påkalle klar() metode for å fjerne hvert element i stabelen:

Konklusjon

Stabler er nyttige datastrukturer med mange virkelige applikasjoner som nettleserhistorikk, angreknapp i tekstredigering og anropslogger. Alle disse applikasjonene følger LIFO-prinsippet, for eksempel går tilbake-knappen i nettleseren tilbake til den sist besøkte siden og den første oppføringen i anropsloggen er alltid den siste anropet.

Implementeringen av stack i JavaScript er veldig enkel siden den har innebygd trykk og pop metoder for arrays. Denne artikkelen demonstrerer prosessen med implementering av stack i JavaScript.