Шаг 17.
Алгоритмы.
Рекурсия. Понятие стека

    На этом шаге рассмотрим понятие стека.

    Концепция стека играет важную роль в программировании вообще; кроме того, ее важно понимать при использовании рекурсии.

    Предположим, вы устраиваете олимпиаду по программированию. Вы составляете список задач и записываете дела на листках.

    Помните, когда мы рассматривали массивы и списки, у вас тоже был список задач? Задачи, то есть элементы списка, можно было добавлять и удалять в произвольных позициях списка. Стопка листков работает куда проще. Новые (вставленные) элементы добавляются в начало списка, то есть на верх стопки. Читается только верхний элемент, и он исключается из списка. Таким образом, список задач поддерживает всего два действия: занесение (вставка) и извлечение (выведение из списка и чтение).

    Посмотрим, как работает список задач:

    Такая структура данных называется стеком.

    На следующем шаге продолжим рассматривать рекурсию.




Предыдущий шаг Содержание Следующий шаг