Python - fila
Estamos familiarizados com a fila de espera em nosso dia a dia enquanto esperamos por um serviço. A estrutura de dados da fila também significa a mesma quando os elementos de dados são organizados em uma fila. A singularidade da fila está na maneira como os itens são adicionados e removidos. Os itens são permitidos na extremidade, mas removidos da outra extremidade. Portanto, é um método First-in-First-out. Uma fila pode ser implementada usando a lista python, onde podemos usar os métodos insert () e pop () para adicionar e remover elementos. Não há inserção, pois os elementos de dados são sempre adicionados no final da fila.
Adicionando Elementos a uma Fila
No exemplo a seguir, criamos uma classe de fila onde implementamos o método First-in-First-Out. Usamos o método de inserção embutido para adicionar elementos de dados.
class Queue:
def __init__(self):
self.queue = list()
def addtoq(self,dataval):
# Insert method to add element
if dataval not in self.queue:
self.queue.insert(0,dataval)
return True
return False
def size(self):
return len(self.queue)
TheQueue = Queue()
TheQueue.addtoq("Mon")
TheQueue.addtoq("Tue")
TheQueue.addtoq("Wed")
print(TheQueue.size())
Quando o código acima é executado, ele produz o seguinte resultado -
3
Removendo elemento de uma fila
No exemplo a seguir, criamos uma classe de fila onde inserimos os dados e, em seguida, removemos os dados usando o método pop embutido.
.class Queue:
def __init__(self):
self.queue = list()
def addtoq(self,dataval):
# Insert method to add element
if dataval not in self.queue:
self.queue.insert(0,dataval)
return True
return False
# Pop method to remove element
def removefromq(self):
if len(self.queue)>0:
return self.queue.pop()
return ("No elements in Queue!")
TheQueue = Queue()
TheQueue.addtoq("Mon")
TheQueue.addtoq("Tue")
TheQueue.addtoq("Wed")
print(TheQueue.removefromq())
print(TheQueue.removefromq())
Quando o código acima é executado, ele produz o seguinte resultado -
Mon
Tue