Files

Dans ce TD, nous allons implémenter les files.
Pour cette implémentation, nous allons utiliser un tableau.
Et implémenter, dessus les différentes méthodes à l'aide des méthodes append et pop.

Créer une classe file qui possèdera 2 attributs :
  • file : un tableau vide;
  • taille : un entier qui représente la taille de la file

Exemples :


>>> f = file()
>>> print(f.file)
[]
>>> print(f.taille)
0
  
La méthode enfiler doit permettre d'ajouter une valeur dans l'attribut file tout en incrémentant l'attribut taille
Ajouter une méthode enfiler qui prend en paramètre une valeur et qui la stocke dans l'attribut file, à chaque emfilement, l'attribut taille est incrémenter de 1.

Exemple :


>>> f = file()
>>> f.enfiler("♥")
>>> f.enfiler("les")
>>> f.enfiler("structures")
>>> f.enfiler("de")
>>> f.enfiler("données")
>>> print(f.valeur)
["♥","les","structures","de","données"]
>>> print(f.taille)
5
    
On souhaite maintenant pouvoir savoir si la file est vide où non.
Implémenter la méthode est_vide, qui ne prend pas de paramètre et renvoie un booléen (True/False) suivant que la file est vide ou non.

>>> f = file()
>>> print(f.est_vide())
True
>>> f.enfiler(1)
>>> print(f.est_vide())
False
  
On souhaite maintenant pouvoir défiler les éléments de la file.
Ainsi défiler doit permettre d'enlever et de récuper le sommet de la file.
Implémenter la méthode defiler, qui ne prend pas de paramètre et renvoie le sommet de la file en le supprimant de la file si la file n'est pas vide et None sinon.
Il faudra actualiser la taille de la file après avoir défiler

>>> f = file()
>>> f.enfiler(1)
>>> f.enfiler(2)
>>> f.enfiler(3)
>>> tete = f.defiler()
>>> print(tete)
1
>>> print(f.taille)
2
>>> f1 = file()
>>> print(f1.defiler())
None
  
On souhaite aussi pouvoir lire la tête de file, c'est à dire obtenir sa valeur sans modifier la file.
Implémenter la méthode tete qui ne prend pas de paramètre et qui renvoie la tête de la file sans modifier la file.

Exemple


>>> f = File()
>>> f.enfile(1)
>>> f.enfile(2)
>>> f.enfile(3)
>>> print(f.tete())
1
>>> print(f.file())
[1, 2, 3]

  
Bravo !!!
Tu as fini d'implémenter ton premier objet en liste chainée.

Le code de fin de TD est 955316
Editeur + Tableau blanc Document