IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

fonction insert (liste dbl chainée) [Débutant(e)]


Sujet :

C

  1. #1
    Rédacteur
    Avatar de Yoshio
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 732
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 732
    Points : 2 853
    Points
    2 853
    Par défaut fonction insert (liste dbl chainée)
    Bonjour,

    Que veux dire cette ligne de code extraite de : http://nicolasj.developpez.com/articles/listedouble/

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    void dll_insert (dll_s ** pp_dll, void *data)
    on cree une fonction pour insérer les enregistrement mais je ne comprend pas la paranthèse surtout le dll_s ** pp_dll (les ** ) et ce qu'est le pp_dll

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 74
    Points : 81
    Points
    81
    Par défaut
    Et bien pour une fonction d'insertion dans une liste chainée, tu dois lui envoyer l'adresse de ton pointeur de tête de liste et non simplement passer le pointeur en paramètre, pour pouvoir le modifier et rajouter ton nouveau maillon d'où les ** dans les paramètres de la fonction insert.
    Autrement pp_dll est le pointeur vers le tout premier maillon de ta liste (en principe).
    Quelqu'un te le confirmera (ou pas), car j'ai toujours peur de raconter des âneries

  3. #3
    Rédacteur
    Avatar de Yoshio
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 732
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 732
    Points : 2 853
    Points
    2 853
    Par défaut
    pourquoi faut-il passer en paramèetre l'adresse du pointeur en tete de liste ? c'est pas plutot le dernier pointeur qu'on devrais passer en paramètre pour qu'il ajoute les données apres ce pointeur ?!

  4. #4
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par omura
    pourquoi faut-il passer en paramèetre l'adresse du pointeur en tete de liste ? c'est pas plutot le dernier pointeur qu'on devrais passer en paramètre pour qu'il ajoute les données apres ce pointeur ?!
    Parce que la première fois, le pointeur vaut NULL. Il faut bien le modifier pour lui donner la valeur d'ancrage. On dirait que tu ne connais pas le principe des listes chainées...

    Et puis si on voulait insérer en tête ?

  5. #5
    Rédacteur
    Avatar de Yoshio
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 732
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 732
    Points : 2 853
    Points
    2 853
    Par défaut
    bah j'ai lu le tutorial tres bien fait d'ailleur et j'essaye de le comprendre mnt lol mais j'ai un peu de mal

  6. #6
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par omura
    bah j'ai lu le tutorial tres bien fait d'ailleur et j'essaye de le comprendre mnt lol mais j'ai un peu de mal
    C'est à dire qu'avant de se lancer dans l'implémentation, il faut connaitre la théorie (qui ne dépend pas du langage, mais des notions plus vastes comme "algorithmique et structures de données", qui sont du domaine de la conception.

    Pour la théorie, le bon forum est "Algorithmes".

    Une fois que tu auras compris ce qu'est une insertion en tête, un ajout en queue, l'impémentation te semblera évidente, car elle répond à un besoin bien précis. Pour le moment, tu es dans le brouillard, normal que tu ais du mal.

  7. #7
    Rédacteur
    Avatar de Yoshio
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 732
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 732
    Points : 2 853
    Points
    2 853
    Par défaut
    mon cours d'algo n'avance pas à la même vitesse que mon cours en C lol

    j'en peux rien moi ...

Discussions similaires

  1. Insertion d'un élément dans une liste simplement chainée triée (croissante)
    Par vayouva dans le forum Algorithmes et structures de données
    Réponses: 1
    Dernier message: 14/11/2014, 10h29
  2. Réponses: 2
    Dernier message: 08/10/2013, 14h54
  3. Réponses: 10
    Dernier message: 24/02/2004, 13h28
  4. Fonctions de manipulation des chaines et des dates
    Par Fares BELHAOUAS dans le forum Débuter
    Réponses: 3
    Dernier message: 09/11/2002, 23h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo