Queue = fila FIFO
Uma Fila e uma fila — entra no final, sai pela frente. FIFO = Primeiro a Entrar, Primeiro a Sair.
Big-O:
• enqueue(item) — O(1) com deque, O(n) com lista
• dequeue() — O(1) com deque, O(n) com lista
• peek() — O(1)
Usamos lista simples aqui. Em producao, use collections.deque pra O(1) nas duas pontas.
Big-O:
• enqueue(item) — O(1) com deque, O(n) com lista
• dequeue() — O(1) com deque, O(n) com lista
• peek() — O(1)
Usamos lista simples aqui. Em producao, use collections.deque pra O(1) nas duas pontas.
Python
class Queue: def __init__(self): self.items = [] def enqueue(self, item): self.items.append(item) def dequeue(self): return self.items.pop(0) def peek(self): return self.items[0] def is_empty(self): return len(self.items) == 0