Liste chaine

Résolu
aimeprogramme Messages postés 1 Statut Membre -  
Chekchak Messages postés 39 Statut Membre -
bonjour j'ai commence a programme en C je voudrais savoir comment ajouté un element au debut et a la fin dans une liste chaine.Merci

1 réponse

  1. Chekchak Messages postés 39 Statut Membre 3
     
    AU DEBUT :
    ta liste :
    P est le pointeur du debut qui pointe sur B
    B C D E
    Q est un nouveau pointeur , et on alloue un nouveau maillon A
    Q--->A
    P--->BCDE
    pour assurer le chainage , on commence par
    A.suivant=B;
    ce qui donne :
    Q-->ABCDE
    mais aussi
    P-->BCDE
    alors on fait
    P=Q;
    et ça donne finalement
    P-->ABCDE
    .

    A LA FIN :
    ta liste :
    P pointe sur le Debut (B)
    P--> BCDE
    on utilise un nouveau pointeur Q , pour parcourir la liste .
    Q=P;
    while(Q.suivant!=NULL){// PAS Q!=NULL , pour s'arreter au dernier maillon
    Q=Q.suivant;}
    on utilise un autre pointeur R pour allouer le nouveau maillon F
    donc
    (la je prends que la fin de la liste mais elle est liée )
    Q-->E
    R-->F
    la on fait Q.suivant=R;
    ça donne
    P-->ABCDEF
    (utilise une fonction pour te debarasser des pointeur a la fin du programme)
    si c'est trop compliqué essayes de dessiner les maillon et déroule ce que je viens de t'expliquer , sinon donne moi la déclaration du type liste et je te code le truc , bon courage et sorry for my bad french lol
    0