К справочнику

Структуры данных

Стек

Стек хранит последнюю открытую конструкцию, которую должен закрыть следующий подходящий символ.

Сигнал задачи

Когда применять

Нужно обработать последнюю незавершённую сущность.

Что держать в голове

  • Уметь объяснять LIFO-инвариант проверки скобок.
  • Уметь безопасно обрабатывать закрывающую скобку при пустом стеке.

Сложность

  • Чтение вершины и pop с конца — O(1); push в стек поверх динамического массива амортизированно O(1), отдельное расширение — O(n); память O(n).

Границы и ошибки

  • Перед чтением или удалением вершины проверяйте пустоту; в задачах со скобками дополнительно сверяйте тип пары.