КурсыИИМатематикаКодФизикаО проекте и вопросы

TwiddleLab / Код / Структуры данных, которые видно

Стеки: последним пришёл, первым вышел

Урок 1 из 10 · 5 мин · Бесплатно, без аккаунта

Что ты узнаешь

  • Стек хранит вещи стопкой: добавляешь сверху и берёшь сверху.
  • Push кладёт элемент наверх; pop снимает верхний. Последним пришёл, первым вышел (LIFO).
  • В Python список это стек: s.append(x) кладёт, s.pop() снимает последний элемент.
  • Отмена, кнопка «Назад» и парные скобки работают на стеке.

Начать урок

Как идёт урок

  1. Печатаешь, удаляешь, вставляешь, потом жмёшь «Отменить». Откуда приложение знает, что отменять?

    Сначала отредактируй эту заметку своими руками. Сделай четыре действия в любом порядке.

  2. Нажимаешь «Отменить» один раз. Какое действие исчезнет?

    Вот они вперемешку. Нажми на свою ставку.

  3. Нажми «Отменить» три раза.

    Каждое действие это тарелка в стопке. Смотри, какая тарелка снимается.

    Каждое действие кладётся наверх стопки, когда его делают. «Отменить» всегда берёт сверху, поэтому первым отменяет самое последнее действие.

  4. Эта стопка это стек.

    Стек это стопка: трогаешь только верх.

    Push кладёт элемент наверх. Pop снимает верхний. Последним пришёл, первым вышел: LIFO.

    В Python обычный список работает как стек: s.append(x) кладёт, s.pop() снимает последний элемент и отдаёт его.

  5. Башня из тарелок.

    Клади и снимай, пока стек не совпадёт с целью. Постарайся уложиться в норму.

  6. Теперь та же стопка на Python.

    Пройди код по шагам. Перед каждым pop нажми на тарелку, которая, по-твоему, уйдёт.

    Список Python растёт с конца, а pop() без числа убирает последний элемент. Поэтому конец списка это верх стека.

  7. Скоростной раунд: в каком порядке уходят тарелки?

    Четыре раунда. Нажимай на тарелки в том порядке, в каком их забирают pop.

    Каждый pop убирает самый последний push, который ещё не сняли. В раунде 4: уходит C, потом D (только что положили), потом B, потом E, потом A с самого низа.

Следующий урок: Очередь: первым пришёл, первым ушёл · Часть курса: Структуры данных, которые видно

Уроки интерактивные и работают на JavaScript. Включи его, чтобы играть.

Loading TwiddleLab