Problemme sur les listes doublements chaines
inteligence
Messages postés
46
Statut
Membre
-
lami20j Messages postés 21644 Date d'inscription Statut Modérateur, Contributeur sécurité Dernière intervention -
lami20j Messages postés 21644 Date d'inscription Statut Modérateur, Contributeur sécurité Dernière intervention -
bonjour a tous j'ai un peutit problemme concernant les listes doublements chaines plus precisement l'insrection au debut d'une liste .
voici l'algorithme:
<code type="c">anneau *nouv;
nouv = malloc(sizeof(anneau));
if(!nouv) exit(1);
nouv->valeur = val;
nouv->suivant = L->premier;
nouv->precedent = NULL;
if(L->premier)
L->premier->precedent = nouv;
else L->dernier = nouv;
L->premier = nouv; }</code>
aidez moi a comprendre cette algoritme merci d'avence.
voici l'algorithme:
<code type="c">anneau *nouv;
nouv = malloc(sizeof(anneau));
if(!nouv) exit(1);
nouv->valeur = val;
nouv->suivant = L->premier;
nouv->precedent = NULL;
if(L->premier)
L->premier->precedent = nouv;
else L->dernier = nouv;
L->premier = nouv; }</code>
aidez moi a comprendre cette algoritme merci d'avence.
A voir également:
- Problemme sur les listes doublements chaines
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Comment faire une liste déroulante sur excel - Guide
- Chaine tnt gratuite sur mobile - Guide
- Les chaines gratuites sur canal+ - Accueil - Streaming
- Impossible d'installer les chaînes tv tcl - Forum TV & Vidéo
3 réponses
merci pour ce que tu ma envoyer mes j'ai pas toujours compris ces deux conditions !!!!
en realite je n'arrive pas a imagine la liste (je ne connais pas son mecanisme).
merci d'avence.
en realite je n'arrive pas a imagine la liste (je ne connais pas son mecanisme).
merci d'avence.
en realite je n'arrive pas a imagine la liste (je ne connais pas son mecanisme).
c'est la raison pour laquelle j'ai mis des photos dans le tutoriel
Dans une liste doublement chaînée tu as 2 pointeurs :
precedent qui permet la liaison vers l'élément précédent
suivant qui permet la liaison vers l'élément suivant
pour inserer un élément au début de la liste il faut que tu fasse ça
Les pointeurs de nouveau élément
1. mettre le pointeur précédent du nouveau élément vers NULL (ce qui signifie qu'il sera le 1er élément)
2. mettre le pointeur suivant du nouveau élément vers l'élément qui est actuellement le 1er de la liste
Les pointeurs du 1er élément qui deviendra le 2ème
1. le pointeur precedent doit pointer vers le nouveau élément ajouté
2. le pointeur suivant du ex 1er élément point déjà vers l'élément suivant donc rien à modifier
Le pointeur de contrôle de 1er élément doit maintenant pointé vers le nouveau élément qui est maintenant le 1er
c'est la raison pour laquelle j'ai mis des photos dans le tutoriel
Dans une liste doublement chaînée tu as 2 pointeurs :
precedent qui permet la liaison vers l'élément précédent
suivant qui permet la liaison vers l'élément suivant
pour inserer un élément au début de la liste il faut que tu fasse ça
Les pointeurs de nouveau élément
1. mettre le pointeur précédent du nouveau élément vers NULL (ce qui signifie qu'il sera le 1er élément)
2. mettre le pointeur suivant du nouveau élément vers l'élément qui est actuellement le 1er de la liste
Les pointeurs du 1er élément qui deviendra le 2ème
1. le pointeur precedent doit pointer vers le nouveau élément ajouté
2. le pointeur suivant du ex 1er élément point déjà vers l'élément suivant donc rien à modifier
Le pointeur de contrôle de 1er élément doit maintenant pointé vers le nouveau élément qui est maintenant le 1er