Overview
Une pile est une structure de données LIFO (Dernier Entré, Premier Sorti). Les éléments sont empilés ou dépilés depuis le sommet.
Analogy
Comme une pile d'assiettes — tu poses et prends toujours depuis le dessus.
Step-by-step
- Push : ajoute un élément au sommet
- Pop : retire l'élément du sommet
- Peek/Top : regarde le sommet sans retirer
- isEmpty : vérifie si la pile est vide
Visual
pile = []
pile.append(1) # [1]
pile.append(2) # [1,2]
pile.pop() # retourne 2, pile=[1]
Common mistakes
- Pop sur une pile vide → IndexError
- Utiliser les mauvaises opérations de liste pour simuler la pile
Practice questions
- Vérifie la correspondance des parenthèses avec une pile
- Implémente l'évaluation d'expressions postfixées