1.2 KiB
Principe
Une pile est une structure de données abstraite (une boîte noir) qui supporte les opérations suivantes :
- push : ajoute un élément à la pile élément par élément
- pop : retire un élément de la pile et renvoie l'élément le plus récent :
- empty : détermine si la pile est vide
L'historique navigateur est une pile qui a été augmenté. Le bouton back est une opération utilisé ave la partie pile. Stocker les actions utilisateurs avec une pile.
Une pile peut servir pour un retour arrière, pour simuler une récursivité.
En java
"La classe stack est vraiment merdissime" s'exclama Luc... L'interface Deque représente une pile (entre autres). push -> addLast (version simple : offer) pop -> removeLast (version simple : poll) empty -> isEmpty (null)
Cette interface est réalisée par ArrayDeque et LinkedList.
A monter soi même
Une pile peut être codée avec une liste chainée. On range les éléments du plus récent au plus ancien afin de toujours travailler au début. Une pile peut être codée également avec un tableau. Les éléments sont ordonnés du plus ancien au plus récent. On peut gérer les problèmes de capacité en limitant la pile ou en redimensionnant le tableau.