3.4.2. Files#

3.4.2.1. Principe général#

Une file est une structure de données organisée suivant le principe du premier arrivé, premier servi/sorti. On utilise souvent l’acronyme anglais FIFO pour First In, First Out.

Il faut se représenter une file d’attente organisée de personnes. On définit alors un tête de file (la personne qui arrive au gichet) et une queue de file, la personne qui vient d’arriver dans la file.

Ces files sont utilisés naturellement dans de nombreux domaines :

  • gestion de stock

  • arrivée des paquets sur un réseau

3.4.2.2. Primitives essentielles#

Une file dispose des primitives usuelles suivantes :

  • Enfiler

  • Défiler

  • estVide

  • len

Contrairement aux tableaux, aux listes ou aux piles dont la mise en œuvre est assez «naturelle» avec les outils de l’informatique, la file se met en œuvre, soit à l’aide de tableaux, soit à l’aide d’une liste chainée1, soit encore à l’aide de deux piles.

from cours.structures import File
f = File()
f
[]
f.enfiler('perle')
f
['perle']
f.enfiler('jaune')
f.enfiler('rouge')
f
['rouge', 'jaune', 'perle']
f.defiler()
'perle'
f
['rouge', 'jaune']