стеки

Стеки - это структуры данных, которые реализуют набор элементов, работающих в контексте LIFO (последним пришел - первым обслужен), где последний добавляемый элемент будет удален первым. Обычно стеки поддерживают три основных операции:

  • Push (), чтобы добавить элементы в конец коллекции.
  • Pop (), чтобы удалить последний элемент из коллекции.
  • Peek (), чтобы увидеть последний элемент из коллекции без изменения коллекции.

К сожалению, javascript не предоставляет предопределенного способа использования стеков в нашем коде, как это делают другие языки программирования, такие как Java или C ++, но он предоставляет нам все инструменты для его самостоятельной реализации.

Реализация стека в javascript

Начнем с создания класса под названием Stack

В конце концов, стек - это набор элементов. давайте реализуем конструктор и определим атрибут массива.

Давайте реализуем Push (), чтобы добавить элементы в конец нашего стека.

Затем следует Pop (), чтобы удалить последний элемент стека.

И последнее, но не менее важное: Peek (), чтобы увидеть последний элемент стека без изменения коллекции.

Итерация по стеку

Чтобы перебрать наш стек, мы можем использовать цикл while и проверить, есть ли что-нибудь в конце стека, как показано ниже

Заключение

Стеки - это мощные структуры данных, в которых порядок операций имеет значение. Правильная реализация стека обеспечивает повышение безопасности, поскольку вы предлагаете ограниченный доступ из-за его природы. Это также приводит к ограничению предоставления произвольного доступа, что означает, что для доступа к элементу вы должны удалить все, что было добавлено в коллекцию после него.