Les LinkedList en java

Les Linked List (ou listes chaînées en français) sont une des implémentation de la collection List. Les listes chaînées sont des liste doublement liées.

Les caractéristiques d’une liste chaînée

  • Les opérations qui sont indexées dans la liste parcourent la liste à partir du début ou de la fin, cela dépend de la valeur la plus proche de l’index spécifié.
  • Ses Iterators (itérateurs) et ListIterator sont « fail-safe » c’est à dire sans risque. Se qui signifie qu’une fois que notre liste chaînée est créée, et que l’Iterator l’est aussi, si nous modifions la liste une exception sera levée : ConcurrentModificationException.
  • Chaque élément d’une liste chaînée est un nœud de la liste. Chaque nœud possède une référence vers le nœud précédent et le suivant.
  • Enfin, les listes chaînées conservent l’ordre d’insertion des opérations.

Les opérations sur une LinkedList

Dans le cadre de l’utilisation d’une liste chaînée, les insertions, les ajouts et les suppressions d’une éléments sont bien plus rapide. En effet, dans une liste chaînée il n’est pas nécessaire de redimensionner le tableau ou de mettre à jour l’index de celui-ci. seules le références des éléments environnants sont mis à jour. Exemple:

Voici l’état initial d’une LinkedList après insertions des opérations.

Si j’ajoute un élément entre l’index B et l’index C, voici ce qui se produit:

Voici ce que cela donne si on insert une opération entre deux index déjà existant

Il faut cependant savoir qu’une LinkedList consomme plus de mémoire qu’une ArrayList car chaque nœud stocke deux références comme expliqué juste avant, alors qu’une ArrayList elle, ne stocke que les donnée fournie dans chaque nœud.

Utiliser les LinkedList

Instancier une liste chaînée

Constructeur
List<String> myStrings = new ArrayList<>();

Ajouter un élément à la liste

myLinkedList.addfirst(myObject);
myLinkedList.addLast(myObject);

Supprimer un élément

myLinkedList.removeFirst();
myLinkedList.removeLast();
myLinkedList.removeFirstOccurence(myObject);
myLinkedList.removeLastOccurence(myObject);

Les deux dernières méthodes retournent un booléen à vrai si la collection contient l’élément spécifié et faux sinon.

Jeune étudiant en informatique curieux de tout. Je m'intéresse à de nombreux sujets différents qu'ils soient axés informatique ou non.
Posts created 6

Articles similaires

Commencez à saisir votre recherche ci-dessus et pressez Entrée pour rechercher. ESC pour annuler.

Retour en haut