Стеки в Python
Стек – это структура данных, которая реализована с использованием первого подхода в последнее время. Типичная реализация стека будет попытаться организовать три книги на полу вертикально (книга A, книга B и книга C соответственно). Сначала мы выбираем книгу А и поместим ее на пол, затем книга B на вершине книги А и, наконец, книга С на вершине и Б.
Всплеск Теперь, чтобы получить книгу А, мы должны взять Книга B и книга C Один за другим, прежде чем мы сможем забронировать снова. Этот подход называется Popping.
** Нажатие **, чтобы подтолкнуть элемент на вершине стека, просто означает размещение элемента на вершину стека, как мы делали, когда мы разместили наши книги вертикально.
Достаточно теории, давайте напишем какой -нибудь код😎
Реализация этого:
mystack ()
Инициализировать класс стека
mystack.push ("a")
mystack.push ("b")
mystack.push ("c")
Нажмите три элемента в стек
Отображение стека ['A', 'b', 'c']
Выберите элемент из стека print (mystack.pop ())
Посмотреть в нашем стеке 'B'
Давайте разберем это:
- Сначала мы создали класс для нашей структуры данных и назвали его
Куча
- В нашей функции конструктора (
def __init__
) мы создали пустой список, называемый элементами, которые будут называться немедленно, мы инициализируем экземплярСтек
учебный класс Push
– Поскольку наши значения хранятся в списке, мы можем легко использовать встроенныедобавлять
Метод на нашемПредметы
Список, чтобы добавить элемент.Поп
– Это использует встроенныйпоп
Метод для удаления первого элемента в верхней части стека.get_stack
– Возвращает список всех элементов в стекеis_empty
– сравниваетПредметы
Список в пустой список и возвращает false или true, если список пуст или заполнен соответственно.Peek
– Поскольку стек использует первый подход в последнем выходе, взгляд на стеке Out должен показывать нам только элемент поверх стека. Следовательно, мы обращаем список элементов, чтобы отразить это …
Вы успешно реализовали структуру данных стека в Python🚀. Возьмите чашку кофе сейчас, потому что вы гений.
Оригинал: “https://dev.to/nyamador/implement-a-stack-in-python-43l7”