J'ai des problemes avec les listes
chainées simplement et doublement .Je demande de l'aide à ceux qui
ont matrise ce sujet, à travers un cour dans lequel je
pourrai comprendre le deplacement du pointeur lors d'une insertion ,un
suppresion d'un maillon de la liste; avant comment arrive t-on à lier
les maillons d'une liste .
Tu crée un objet Cellule qui sera le maillon de ta liste chainée. Dans
cette Cellule, tu mets ta structure de données et un pointeur vers un
objet Cellule (2 dans le cas d'une liste doublement chainée)
struct Cellule
{
TonType TaStruct; // ta structure de donnée
Cellule * Suivant; // un pointeur vers le prochain maillon
Cellule * Precedant; // dans le cas d'un double chainage
}
Pour implémenter les fonctions utiles (insertion, suppression,...) je fais de petits dessins.
Par exemple: ajout d'un item C21 entre C2 et C3
Ma liste au départ: C1->C2->C3
Je fais pointer C21.Suivant vers C3
Je brise le lien C2.Suivant (mais j'ai toujours accès à C3 par l'intermédiaire de C21)
Je le fais pointer vers C21
Ma liste à l'arrivée: C1->C2->C21->C3
Voilà en gros comment je procède. Si t'as des soucis, n'hésites pas
Buno
----------------------------------------
L'urgent est fait, l'impossible est en train de se faire. Pour les miracles, prévoir un délai...