queue = []
# добавление элементов в стек
queue.append('a')
# извлечение и удаление элементов
element = queue.pop(0)
from collections import deque
stack = deque()
# добавление элементов в стек
stack.append(1)
# извлечение и удаление элементов
element = stack.pop()
from queue import Queue
stack = LifoQueue(maxsize=3)
# добавление элементов в стек
stack.put('a')
# извлечение и удаление элементов
element = stack.get()
class Queue:
def __init__(self, n):
self.queue = [None] * n
self.max_n = n
self.head = 0
self.tail = 0
self.size = 0
def is_empty(self):
return self.size == 0
def push(self, x):
if self.size != self.max_n:
self.queue[self.tail] = x
self.tail = (self.tail + 1) % self.max_n
self.size += 1
def pop(self):
if self.is_empty():
return None
x = self.queue[self.head]
self.queue[self.head] = None
self.head = (self.head + 1) % self.max_n
self.size -= 1
return x