Назад к задачам
Junior — Senior
7

Стек, умеющий быстро находить минимум

Получайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Условие задачи

Необходимо создать структуру данных «стек», поддерживающую четыре операции:

  • push(x) — добавить элемент x в стек;
  • pop() — удалить элемент, находящийся на вершине стека;
  • top() — вернуть текущий верхний элемент без его удаления;
  • get_min() — вернуть наименьшее значение среди всех элементов стека. Все перечисленные операции должны работать за постоянное время O(1).