Quelques implémentations de liste
La section précédente a présenté une implémentation d'une simple liste en utilisant une structure chainée. Cette section s'intéresse à des variantes d'implémentation de listes par structure chainée et également à deux autres types de structure de données : les files et les piles.
Variables d'instance
Dans la classe SimpleLinkedList
implémentée à la section précédente, on avait une variable d'instance de type Node
qui contient une référence vers le premier noeud de la liste. On peut imaginer des variantes en retenant d'autres informations.
On peut par exemple être intéressé par retenir une référence vers le dernier noeud de la liste comme le montre la figure suivante.
![Références vers le premier et dernier noeud de la liste](data/list_first_last_refs.png)
Avec ces deux références il est bien plus facile d'ajouter un élément à la fin de la liste, il ne faut en effet plus parcourir toute la liste pour retrouver le dernier élément. La méthode add
est très simplifiée et est présentée au listing suivant.