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 :

[ Débutant ] trier une liste chainée


Sujet :

C

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Tunisie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 24
    Points : 20
    Points
    20
    Par défaut [ Débutant ] trier une liste chainée
    voila mon programme :
    en quelque mot le pb consiste à trier cette liste chainée selon un ordre décroissant de "degré" .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    # include <stdio.h>
    # include <stdlib.h>
     
    typedef struct noeud
    {
           int coef;
           int deg;
           struct noeud *suiv ;
    }NOEUD;
    typedef NOEUD *list;
     
    list tri(list p,int a)
    {
         list l;
         l=p;
     
    int main()
    {         list p,l;
              int x,y,i=1;
              l==NULL;          
     
               printf("tapez le coefficient : ");
               scanf("%d",&x);
               printf("tapez le degre : ");
               scanf("%d",&y);
               p = ( NOEUD *) malloc ( sizeof(NOEUD)) ;
               p->coef = x;
               p->deg = y;           
               p->suiv = l;
               l=p;
     
         while (x!=0)
         {
               p = ( NOEUD *) malloc ( sizeof(NOEUD)) ;
               p->coef = x;
               p->deg = y;           
               p->suiv = l;
               l=p;
               printf("tapez le coefficient : ");
               scanf("%d",&x);
               printf("tapez le degre : ");
               scanf("%d",&y);
               i++;
         }
    getch();     
    return 0; 
    }
    la question c'est comment peu on trier une liste chainée ?
    ( trier : est ce que on doit changer l'adressage des pointeurs ? )

  2. #2
    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 : 67
    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 sablito
    la question c'est comment peu on trier une liste chainée ?
    avec l'algorithme de tri par insertion qui est fait pour ça.
    ( trier : est ce que on doit changer l'adressage des pointeurs ? )
    Charabia...

  3. #3
    Membre du Club
    Inscrit en
    Octobre 2006
    Messages
    54
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Octobre 2006
    Messages : 54
    Points : 40
    Points
    40
    Par défaut
    Dis moi si je me trompe, mais derrière un malloc faut toujours un free() non ?

  4. #4
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Points : 6 498
    Points
    6 498
    Par défaut
    Tu ne te trompes pas, autant de free que de malloc.

Discussions similaires

  1. Trier une liste chainée
    Par punisher999 dans le forum Général Java
    Réponses: 9
    Dernier message: 12/06/2011, 13h13
  2. Trier une liste chaine
    Par toams69 dans le forum C
    Réponses: 9
    Dernier message: 12/11/2008, 11h12
  3. Réponses: 28
    Dernier message: 24/05/2006, 18h20
  4. Trier une liste chainée.
    Par gregb34 dans le forum Algorithmes et structures de données
    Réponses: 5
    Dernier message: 21/05/2006, 22h05
  5. [Debutant(e)]Trier une liste
    Par LeDébutantJava dans le forum Collection et Stream
    Réponses: 8
    Dernier message: 19/08/2004, 12h44

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