Back to questions
Junior — Middle
54
Каким образом реализовать стек в Python и какую структуру данных для этого выбрать?
Answer from AI
sobes.tech AI
Стек — это структура данных, работающая по принципу LIFO (Last In, First Out), то есть последний добавленный элемент извлекается первым.
В Python для реализации стека можно использовать список (list), так как у него есть методы append() для добавления элемента и pop() для удаления последнего добавленного элемента.
Пример реализации стека на списке:
stack = []
# Добавление элемента
stack.append(1)
stack.append(2)
stack.append(3)
# Извлечение элемента
top = stack.pop() # top == 3
print(stack) # [1, 2]
Если важна высокая производительность при большом количестве операций, можно использовать collections.deque, который оптимизирован для добавления и удаления элементов с обеих сторон:
from collections import deque
stack = deque()
stack.append(1)
stack.append(2)
stack.append(3)
top = stack.pop() # 3
print(stack) # deque([1, 2])