Pile File
Une structure de données est une organisation logique des données permettant de simplifier ou d'accélérer leur traitement (elle se définit tout simplement comme étant la manière de représenter des données.)
Le but de ce chapitre est de décrire des représentations des structures de données telles : les piles et les files. L’autre but recherché est de voir l’importance de ces structures à travers quelques exemples d’applications.
En python, le type liste permet de représenter chacune de ces structures de données.
1. Pile
Une pile est une structure de données qui suit le principe dernier entré - premier sorti (Ou LIFO pour Last In - First Out ). Elle correspond exactement à l’image traditionnelle d’une pile de cartes ou d’assiettes posée sur une table. En particulier, on ne peut accéder qu’au dernier élément ajouté, qu’on appelle le sommet de la pile. Ainsi, si on a ajouté successivement A, puis B, puis C dans une pile, on se retrouve dans la situation suivante :
C est empilé sur B, lui-même empilé sur A. On peut soit retirer C de la pile (on dit qu’on « dépile » C), soit ajouter un quatrième élément D (on dit qu’on « empile » D). Si on veut accéder à l’élément A, il faut commencer par dépiler C, puis B.
L’opération consistant à insérer un élément dans une pile s’appelle empiler. L’opération consistant à supprimer un élément d’une pile s’appelle dépiler. Ces deux opérations s’accomplissent du même côté de la pile.
1.1. Applications
Dans un navigateur web, une pile sert à mémoriser les pages Web visitées. L'adresse de chaque nouvelle page visitée est empilée et l'utilisateur dépile l'adresse de la page précédente en cliquant le bouton « Afficher la page précédente ».
La fonction « Annuler la frappe » (en anglais « Undo ») d'un traitement de texte mémorise les modifications apportées au texte dans une pile.
Pile de vérification de la correction des parenthèses d’une chaîne de caractères
1.2. Opérations