US

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
fig j14.9 Références vers le premier et dernier noeud de la liste

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.