Деление на ноль

Стек: интерактивная анимация (Stack)

Структура LIFO - последним пришел, первым ушел

Визуализация

Сценарий: Заполнение и опустошение
Сценарий:
Легенда цветов
push - кладем на вершину pop и peek - читаем вершину свободная ячейка
Нажмите "Пуск" или листайте по шагам.
Размер стека: 0 Операций: 0 Шаг: 0 / 0 Сложность по времени: -

Как работает стек

Идея структуры: Стек работает по принципу LIFO (Last In, First Out - последним пришел, первым ушел). Представьте стопку тарелок: положить тарелку можно только на самый верх и взять тоже только верхнюю.

Сложность

Сложность - это оценка того, как быстро растет потребление ресурса при росте числа элементов n. Ресурса у структуры два, поэтому и оценки две: по времени и по памяти. Обе записывают через O-нотацию - у нас есть отдельная анимация о том, как читать такие записи.

По времени

У стека все три операции не зависят от размера: работа идет только с вершиной, а до остальных элементов алгоритм не добирается. Лейбл "Сложность по времени" под визуализацией показывает оценку той операции, которая только что завершилась.

Операция Сложность Комментарий
Добавление (Push) O(1) Запись в следующую свободную ячейку top.
Удаление (Pop) O(1) Извлечение значения по индексу top.
Просмотр (Peek) O(1) Чтение значения по индексу top.

По памяти

Характеристика Оценка Комментарий
Затраты по памяти O(n) Для хранения n элементов требуется соответствующий массив.

Свойства

Свойство Значение Комментарий
Принцип работы LIFO Последним пришел - первым ушел. Все операции происходят строго на вершине стека (top).
Доступ к элементам Ограничен Доступен только верхний элемент. Чтение и изменение элементов внутри стека запрещены.
Эффективность O(1) Добавление (push), удаление (pop) и просмотр вершины (peek) выполняются за константное время.

Примеры реализации: Стек (Stack)

Хотите разобрать тему глубже? В нашем бесплатном курсе есть урок про стек и принцип LIFO - с подробной теорией, задачами и проверочными вопросами.