Partage
  • Partager sur Facebook
  • Partager sur Twitter

[STL] conteneur a clefs non ordonnés

Sujet résolu
    1 juin 2008 à 22:59:16

    Edit: j'ai ressui finalement en employant
    vector< pair<char, int> >caractere;
    


    merci fivrtmen, mais j'ai deja resolu le probleme :)

    • Partager sur Facebook
    • Partager sur Twitter
      1 juin 2008 à 23:19:45

      std::tr1::unordered_map / set.
      Cela sera dans le prochain standard, et certains compilos les fournissent déjà. Sinon, certaines implémentations de la SL fournissent un hash_map (qui est exactement la même chose)
      • Partager sur Facebook
      • Partager sur Twitter
      C++: Blog|FAQ C++ dvpz|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS| Bons livres sur le C++| PS: Je ne réponds pas aux questions techniques par MP.
        1 juin 2008 à 23:20:36

        donc je dois utiliser hash_map ?
        • Partager sur Facebook
        • Partager sur Twitter
          2 juin 2008 à 0:02:52

          Tout dépend de ce que tu utilises, et de ce que tu es prêt à utiliser.
          • Partager sur Facebook
          • Partager sur Twitter
          C++: Blog|FAQ C++ dvpz|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS| Bons livres sur le C++| PS: Je ne réponds pas aux questions techniques par MP.
            2 juin 2008 à 0:20:58

            mais comme c'est un exercice, je ne dois utiliser que ce que la norme definit.
            Je demande donc s'il y a une alternative standart ^^
            • Partager sur Facebook
            • Partager sur Twitter
              2 juin 2008 à 0:25:43

              Ah!
              Pas encore alors.

              Si vraiment tu as besoin d'un truc standard et non ordonné, vois avec ton prof alors, c'est le mieux.
              • Partager sur Facebook
              • Partager sur Twitter
              C++: Blog|FAQ C++ dvpz|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS| Bons livres sur le C++| PS: Je ne réponds pas aux questions techniques par MP.
                2 juin 2008 à 0:26:48

                j'ai pas de profs ^^(a 15ans)
                je parlais de l'exercie de ce site meme :)
                • Partager sur Facebook
                • Partager sur Twitter
                  2 juin 2008 à 1:03:26

                  Lequel ?

                  Quel est ton compilo sinon ? A tout hasard, tu peux tenter d'inclure <unordered_map>, ou <hash_map> et voir si un des deux est supporté.
                  • Partager sur Facebook
                  • Partager sur Twitter
                  C++: Blog|FAQ C++ dvpz|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS| Bons livres sur le C++| PS: Je ne réponds pas aux questions techniques par MP.
                    2 juin 2008 à 13:03:21

                    je parlais de cet exercice
                    sinon, avec le compilateur de c::b(derniere version) et celui de ms vc++, ils ne trouve pas mes deux fichier :(
                    • Partager sur Facebook
                    • Partager sur Twitter
                      2 juin 2008 à 13:43:21

                      OK. Une simple map ne conviendrait pas ?
                      • Partager sur Facebook
                      • Partager sur Twitter
                      C++: Blog|FAQ C++ dvpz|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS| Bons livres sur le C++| PS: Je ne réponds pas aux questions techniques par MP.
                        2 juin 2008 à 13:45:44

                        non, parce que la map doit avoir les clefs uniques :(
                        etpuis, la map n'est pas ordonnée elle aussi?
                        • Partager sur Facebook
                        • Partager sur Twitter
                          2 juin 2008 à 14:24:21

                          Ou multi_map si tu préfères.
                          A partir du moment où ta clé est ordonnable, tu peux les (orderered) std::(multi_)?(map|set).
                          Les versions non ordonnées sont là pour deux choses uniquements:
                          1- dans le cas où l'on est incapable de définir un ordre
                          2- pour changer la complexité algorithmique des diverses opérations

                          A partir du moment où tu n'es pas dans le cas 1-, tu peux te contenter des versions standards.
                          • Partager sur Facebook
                          • Partager sur Twitter
                          C++: Blog|FAQ C++ dvpz|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS| Bons livres sur le C++| PS: Je ne réponds pas aux questions techniques par MP.
                            2 juin 2008 à 14:41:56

                            mias dans mon cas, je fais comment? je veux que la map soit desordonnée, je fais comment?
                            • Partager sur Facebook
                            • Partager sur Twitter
                              2 juin 2008 à 15:07:43

                              une map, par définition, est ordonnée. un set aussi.
                              Si tu veux garder les éléments dans l'ordre ou tu les a entré, utilise vector par exemple. Si tu veux un conteneur associatif comme map, utilise un vector de pair.
                              • Partager sur Facebook
                              • Partager sur Twitter

                              Recueil de code C et C++  http://fvirtman.free.fr/recueil/index.html

                                2 juin 2008 à 15:14:38

                                Citation : 1er message

                                Edit: j'ai ressui finalement en employant

                                vector< pair<char, int> >caractere;
                                


                                merci fivrtmen, mais j'ai deja resolu le probleme :)

                                • Partager sur Facebook
                                • Partager sur Twitter

                                [STL] conteneur a clefs non ordonnés

                                × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                • Editeur
                                • Markdown