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 :

Triage d'une <map> selon le second membre


Sujet :

C++

  1. #1
    Membre éprouvé Avatar de ccensam
    Inscrit en
    Juillet 2005
    Messages
    128
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Juillet 2005
    Messages : 128
    Par défaut Triage d'une <map> selon le second membre
    Salut les amis,
    J'ai un petit problème technique que j'arrive pas encore à résoudre.
    Soit le bout de code :
    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
    #include <iostream>
    #include <map>
    #include <algorithm>
     
    typedef map<string,int> freqmots;
     
    int main(int argc , char *argv[])
    {
              freqmots freq1;
              for(int i=0 ; i<10 ; i++)
              {
                        cout<<"Donnez un mot et sa frequence ";
                        cin>>freq1.first>>freq1.second;
              } 
    }
    Une fois on a les mots et leurs fréquences, Je veux les triées selon la fréquence et c'est ici que réside le problème, comment faire?!!!!
    Si c'est pas très possible, comment les afficher on ordre décroissant selon la fréquence?

    Merci d'avance

  2. #2
    Membre expérimenté Avatar de Rupella
    Inscrit en
    Février 2005
    Messages
    286
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 286
    Par défaut
    comme ca, la première idée ca serait une multimap< int , string >...

  3. #3
    Membre émérite Avatar de mchk0123
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    816
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 816
    Par défaut
    Déjà ton code ça m'étonnerai qu'il réusisse à compiler tel quel. Je propose plutôt :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
              freqmots freq1;
              string s;
              int f;
     
              for(int i=0 ; i<10 ; i++)
              {
                        cout<<"Donnez un mot et sa frequence ";
                        cin>>s>>f;
                        freq1[s] = f;
              } 
    }
    Ensuite une façon bourrine c'est de recoder l'algo du quicksort (ou tri par insertion si les perfs ne sont pas critiques) en maintenant à jour un 2ème tableau (que l'on swap en même temps) contenant tous tes first (les noms).

    Voili voilou

  4. #4
    Expert confirmé
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 296
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 296
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média. Et de toutes façons, ma BAL sur dvpz est pleine...

  5. #5
    Membre émérite Avatar de mchk0123
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    816
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 816

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Centrer une map Bing selon des coordonnées
    Par pra3t0r dans le forum Windows Phone
    Réponses: 2
    Dernier message: 06/06/2012, 11h27
  2. Utiliser une feuille de style selon le navigateur
    Par Jiraiya42 dans le forum Langage
    Réponses: 12
    Dernier message: 11/06/2006, 10h28
  3. Réponses: 14
    Dernier message: 30/05/2006, 16h55
  4. Vider une std::map de pointeur
    Par Zenol dans le forum SL & STL
    Réponses: 14
    Dernier message: 10/02/2006, 13h16
  5. Libérer des pointeurs dans une std::map
    Par GaldorSP dans le forum SL & STL
    Réponses: 2
    Dernier message: 09/07/2005, 14h42

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