Stosy to liniowe struktury danych, które są zgodne z zasadą LIFO. LIFO oznacza ostatnią w pierwszej kolejności, co oznacza, że ostatnio dodany element jest pierwszym, który został usunięty. Ta struktura danych nosi nazwę stosu jako analogia do stosów w świecie rzeczywistym e.G., stos ciastek w słoiku z ciasteczkiem lub stos książek na półce na książki. W wstawianiu stosu i ekstrakcji można wykonać tylko na jednym końcu I.mi., górna część stosu. Na przykład, jeśli chcemy zjeść ciasteczka, najpierw dostaniemy najlepszą, a następnie drugą i tak dalej.
Ten post będzie dotyczył wdrożenia stosu w JavaScript. Gdy pracujemy z JavaScript, nie będziemy martwić się rozmiarem stosu, ponieważ rozmiar obiektów JavaScript może rosnąć dynamicznie.
Wdrożenie stosu w JavaScript
Użyjemy klasy JavaScript do wdrożenia struktury danych stosu. stos Klasa będzie zawierać tablicę w swoim konstruktorze, który będzie używany do przechowywania elementów w stosie. Klasa zdefiniuje również różne metody, które zostaną wykorzystane do manipulowania danymi przechowywanymi w stosie. Najbardziej podstawowymi metodami tablicy są wstawić() I wyciąg() Metody, które są używane do dodawania i usuwania elementów z góry stosu.
stos klasa definiuje również inne metody, takie jak zerkać(), jest pusty(), jasne(), wydrukować() I rozmiar() również:
stos klasowy
Constructor ()
Ten.elementy = [];
// umieszcza przedmiot na stosie
wstaw (element)
Ten.elementy.push (element);
// usuwa element z góry stosu
wyciąg()
Ten.elementy.Muzyka pop();
// zwraca najwyższy element stosu
peek ()
Zwróć to.elementy [to.elementy.długość - 1];
// Sprawdza, czy stos jest pusty
jest pusty()
Zwróć to.elementy.długość == 0;
// drukuje cały stos
print ()
dla (niech i = 0; i < this.elements.length; i++)
konsola.Log (to.elementy [i]);
// Zwraca rozmiar stosu
size ()
Zwróć to.elementy.długość;
// usuwa stos
jasne()
Ten.elementy = [];
Pchanie i wyskakujące elementy ze stosu
Najbardziej podstawowym działaniem stosu jest wstawienie i wyodrębnienie elementów z góry stosu. Klasa Stack zapewnia dwie metody tych operacji:
Pierwszy wiersz wyżej wymienionego kodu deklaruje nowy stos S. A później wstawić() Metoda stosuje się do wstawienia czterech elementów do stosu, z których dwa są następnie usuwane przez wyciąg() metoda.
Jak uzyskać górny element ze stosu
stos klasa definiuje zerkać() Metoda uzyskania górnego elementu ze stosu:
Jak sprawdzić, czy stos jest pusty?
Klasa definiuje również metodę, której można użyć do sprawdzenia, czy stos jest pusty:
Jak wydrukować cały stos?
wydrukować() Metodę można wywołać do wydrukowania całego stosu
Jak sprawdzić rozmiar stosu?
rozmiar() Metoda używa .długość właściwość, aby uzyskać rozmiar stosu:
Jak wyczyścić cały stos?
Po prostu przywołaj jasne() Metoda usuwania każdego elementu stosu:
Wniosek
Stosy są przydatnymi strukturami danych z wieloma aplikacjami w świecie rzeczywistym, takimi jak historia przeglądarki, przycisk cofania w edytorach tekstowych i dziennikach połączeń. Wszystkie te aplikacje są zgodne z zasadą LIFO.G., Przycisk Wstecz w przeglądarce wraca do ostatniej odwiedzonej strony, a pierwszy wpis dziennika połączeń jest zawsze najnowszym połączeniem.
Implementacja stosu w JavaScript jest naprawdę łatwa, ponieważ ma wbudowane naciskać I Muzyka pop Metody tablic. Ten artykuł pokazuje proces wdrażania stosu w JavaScript.