Mémo d'apprentissage / mémorandum
Le tampon de type dernier entré, premier sorti (LIFO) est ** stack **, et le tampon de type premier entré premier sorti (FIFO) est ** queue **.
stack = []
for i in range(10):
stack.append(i)
if len(stack)>4:
print(stack.pop())
Résultat d'exécution
4 5 6 7 8 9
queue = []
for i in range(10):
queue.append(i)
if len(queue)>4:
print(queue.pop(0))
Résultat d'exécution
0 1 2 3 4 5
Cependant, l'implémentation d'une file d'attente sous forme de liste est inefficace car elle est inefficace car après que les premières données sont récupérées par pop (0)
, le reste des données doit être décalé une par une, utilisez donc le deque
du package collections
. Utilisation.
from collections import deque
queue = deque([])
for i in range(10):
queue.append(i)
if len(queue)>4:
print(queue.popleft())
Résultat d'exécution
0 1 2 3 4 5
Recommended Posts