Ok, je développe
La classe liste est utilisée comme un collier de perle : chaque perle contient un objet (un texte, un chiffre, un objet complexe) ainsi qu'une référence à l'élément qui précède et à celui qui suit.
C'est en gros un tableau dans lequel on peut supprimer tous les éléments ou ajouter une infinité d'élément sans que cela modifie la manière dont vous le parcourez
Par exemple, un unset sur la case d'un tableau supprime une case sans retasser le tableau après (on supprime la case 3, du coup on passe de la case 2 à la 4). Du coup, à moins d'utiliser foreach, lorsque l'on parcours le tableau nous risquons d'avoir un problème (même si en php ce n'est pas très important). Peut être existe-t-il une fonction qui fait déjà celà, je l'ignore.
Parcontre, il est (je pense) impossible d'intercaler une case entre deux autres, la liste le permet sans soucis.
Par exemple, j'ai créé cette classe pour l'algorithme A-star (A*) dans lequel les tableau demande vite une forte complexification du code alors que la liste est optimisée pour cette utilisation.
La classe en elle même n'est pas très longue mais on peut en faire un tuto pour les débutants par exemple
Pour vous en dire plus, j'utilise beaucoup cette classe en Java où les tableaux sont moins flexibles mais c'est vrai que php n'en a peut être pas besoin XD
La classe liste est utilisée comme un collier de perle : chaque perle contient un objet (un texte, un chiffre, un objet complexe) ainsi qu'une référence à l'élément qui précède et à celui qui suit.
C'est en gros un tableau dans lequel on peut supprimer tous les éléments ou ajouter une infinité d'élément sans que cela modifie la manière dont vous le parcourez
Par exemple, un unset sur la case d'un tableau supprime une case sans retasser le tableau après (on supprime la case 3, du coup on passe de la case 2 à la 4). Du coup, à moins d'utiliser foreach, lorsque l'on parcours le tableau nous risquons d'avoir un problème (même si en php ce n'est pas très important). Peut être existe-t-il une fonction qui fait déjà celà, je l'ignore.
Parcontre, il est (je pense) impossible d'intercaler une case entre deux autres, la liste le permet sans soucis.
Par exemple, j'ai créé cette classe pour l'algorithme A-star (A*) dans lequel les tableau demande vite une forte complexification du code alors que la liste est optimisée pour cette utilisation.
La classe en elle même n'est pas très longue mais on peut en faire un tuto pour les débutants par exemple
Pour vous en dire plus, j'utilise beaucoup cette classe en Java où les tableaux sont moins flexibles mais c'est vrai que php n'en a peut être pas besoin XD