Два основных абстрактных типа данных - стек и очередь.

Что такое стеки?

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

  • init - создать стек.
  • push - добавить элемент в верхнюю часть стопки.
  • pop - удалить последний элемент, добавленный в верхнюю часть стопки.
  • наверх - посмотрите на верхний элемент стопки, не снимая его.
  • isEmpty - возвращает, если в стеке больше нет элементов.

Пример:

array_shift () - удаляет первый элемент массива.

array_unshift () - добавлены новые переменные в качестве первого элемента в массиве.

Добавим в стопку несколько элементов:

$stack = new Stack(10, array(1, 2, 3, 4, 5));
//OR
$stack = new Stack();
$stack->push(1);
$stack->push(2);
$stack->push(3);
$stack->push(4);

Чтобы удалить некоторые элементы из стопки:

echo $stack->pop(); // outputs '4'

Посмотрим, что в верхней части стопки:

echo $stack->top(); // outputs '3'

Спасибо за чтение.

Ссылка с: https://www.sitepoint.com/php-data-structures-1/