Índice
Em segundo lugar, a operação da fila
1. Definição
A fila é semelhante à situação de uma fila para uma refeição em uma lanchonete: quem chega primeiro come primeiro, quem chega depois fica atrás e quem chega primeiro sai primeiro depois de comer. Ou, por exemplo, como um cano de água, as coisas colocadas primeiro sempre saem primeiro pela outra ponta, e as coisas colocadas depois saem pela outra ponta.
O resumo é o princípio de primeiro a entrar primeiro a sair e último a sair por último .
Em segundo lugar, a operação da fila
1. Adicione elementos
Inserir um elemento na posição 0 na lista
def enqueue(self, item):
# 往队列中添加一个item元素
self.__items.insert(0, item)
2. Excluir elementos
remover um elemento do final da lista
def dequeue(self):
# 从队列尾部删除一个元素
return self.__items.pop()
3. Determine se está vazio
Verifique se a lista está vazia
def is_empty(self):
# 判断一个队列是否为空
return self.__items == []
4. Tamanho da fila
Retorna o número de elementos da lista
def size(self):
# 返回队列的大小
return len(self.__items)
3. Código completo
O significado do código é criar uma lista vazia. Toda vez que você adicionar um elemento à lista, insira (insira) na posição com subscrito 0 (também insira permanentemente o elemento na primeira posição da lista) e exclua ( pop) toda vez que é excluído do final. Perceba primeiro inserir primeiro excluir (primeiro a entrar primeiro a sair) e depois inserir depois excluir (último a entrar último a sair).
class Queue():
def __init__(self):
self.__items = []
def enqueue(self, item):
# 往队列中添加一个item元素
self.__items.insert(0, item)
def dequeue(self):
# 从队列尾部删除一个元素
return self.__items.pop()
def is_empty(self):
# 判断一个队列是否为空
return self.__items == []
def size(self):
# 返回队列的大小
return len(self.__items)
if __name__ == '__main__':
q = Queue()
q.enqueue(1)
q.enqueue(2)
q.enqueue(3)
q.enqueue(4)
print("队列大小", q.size())
print(q.dequeue())
print(q.dequeue())
print(q.dequeue())
print(q.dequeue())
resultado de saída
队列大小 4
1
2
3
4