Стек

Материал из Algocode wiki
Перейти к: навигация, поиск

Стек

Стек - структура данных, которая хранит элементы и умеет отвечать на две операции за $O(1)$:

  • push(x) - положить элемент x в конец стека
  • pop() - снять и вернуть элемент, лежащий в конце стека

То есть это структура данных, где действия происходят только с элементом, лежащим в конце. Выполняется принцип FILO (First In - Last Out) - последним вынется тот элемент, который мы положили первым, если сначала положить все элементы, а потом все вынуть.

Часто для удобства у стека еще есть операции

  • size() - размер стека
  • empty() - проверка на пустоту
  • clear() - очистить стек

В С++ стек уже реализован,

stack<T>stack_name;

, с всеми вышеперечисленными методами.

Задачи на стек