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 :

[c++] Map


Sujet :

C++

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    45
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2004
    Messages : 45
    Par d�faut [c++] Map
    Bonjour � tous,

    j'aurais aim� savoir comment les map fonctionnent. Plus pr�cis�ment comment se fait il que les recherches avec find s'effectuent en Log(N) ainsi que ce qu'il se passe lorsqu'on acc�de � un �l�ment avec map["cle"] ?

    D'avance je vous remercie.

  2. #2
    Membre �clair� Avatar de vdumont
    Profil pro
    �tudiant
    Inscrit en
    F�vrier 2006
    Messages
    510
    D�tails du profil
    Informations personnelles :
    �ge : 39
    Localisation : Canada

    Informations professionnelles :
    Activit� : �tudiant

    Informations forums :
    Inscription : F�vrier 2006
    Messages : 510
    Par d�faut
    Si tu fais par exemple:


    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    map["cle"] = "allo";
    Si la cl� "cle" n'existe pas, cela la cr�era avec la valeur associ�e "allo".
    Si elle existe, cela modifiera la valeur courante.


    Pour ce qui concerne le find, tu peux faire par exemple:

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
     
    std::map<int,std::string> m;
    int position = m.find(1) // rechercher la clé 1 et retourne sa position si trouvée

  3. #3
    Membre �prouv�
    Avatar de doudoustephane
    Homme Profil pro
    G�rant
    Inscrit en
    Ao�t 2005
    Messages
    1 129
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 40
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activit� : G�rant

    Informations forums :
    Inscription : Ao�t 2005
    Messages : 1 129
    Par d�faut
    Citation Envoy� par vdumont
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    std::map<int,std::string> m;
    oui, mais ce code la (que j'ai laisse), tu peux me l'expliquer STP...???

  4. #4
    Membre Expert
    Avatar de Pragmateek
    Homme Profil pro
    Formateur expert .Net/C#
    Inscrit en
    Mars 2006
    Messages
    2 635
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 39
    Localisation : France, Val de Marne (�le de France)

    Informations professionnelles :
    Activit� : Formateur expert .Net/C#
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 635
    Par d�faut
    Citation Envoy� par doudouallemand
    oui, mais ce code la (que j'ai laisse), tu peux me l'expliquer STP...???
    map est une classe template qui prend en param�tre template le type de la cl� et le type des donn�es.

  5. #5
    Membre �prouv�
    Avatar de doudoustephane
    Homme Profil pro
    G�rant
    Inscrit en
    Ao�t 2005
    Messages
    1 129
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 40
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activit� : G�rant

    Informations forums :
    Inscription : Ao�t 2005
    Messages : 1 129
    Par d�faut
    Citation Envoy� par seriousme
    map est une classe template qui prend en param�tre template le type de la cl� et le type des donn�es.
    ok, mais, a quoi cela sert alors concretement car j'ai beau chercher dans les cours... je trouve rien qui me l'explique bien...

  6. #6
    Membre Expert
    Avatar de Pragmateek
    Homme Profil pro
    Formateur expert .Net/C#
    Inscrit en
    Mars 2006
    Messages
    2 635
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 39
    Localisation : France, Val de Marne (�le de France)

    Informations professionnelles :
    Activit� : Formateur expert .Net/C#
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 635
    Par d�faut
    Citation Envoy� par doudouallemand
    ok, mais, a quoi cela sert alors concretement car j'ai beau chercher dans les cours... je trouve rien qui me l'explique bien...
    De quoi, les templates?

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    45
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2004
    Messages : 45
    Par d�faut
    C'est de savori comment s'est impl�ment� qui m'int�resse.

    Ca fonctionne avec des arbres binaires de recherche ? Comment la cl� du noeud est-elle calcul�e ?

  8. #8
    R�dacteur

    Avatar de Matthieu Brucher
    Profil pro
    D�veloppeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    D�tails du profil
    Informations personnelles :
    �ge : 43
    Localisation : France, Pyr�n�es Atlantiques (Aquitaine)

    Informations professionnelles :
    Activit� : D�veloppeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Par d�faut
    Citation Envoy� par Castagnems
    C'est de savori comment s'est impl�ment� qui m'int�resse.

    Ca fonctionne avec des arbres binaires de recherche ? Comment la cl� du noeud est-elle calcul�e ?
    En g�n�ral, ce sont des arbres � noeuds rouges et noirs. RBTree.

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    45
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2004
    Messages : 45
    Par d�faut
    Ok merci merci ... j'vais essayer d'aller voir dans le fichier <map> ... j'y trouverai sans doute toutes les infos que je veux.

  10. #10
    Membre �m�rite
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    487
    D�tails du profil
    Informations personnelles :
    �ge : 56
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2002
    Messages : 487
    Par d�faut
    Citation Envoy� par Castagnems
    C'est de savori comment s'est impl�ment� qui m'int�resse.

    Ca fonctionne avec des arbres binaires de recherche ? Comment la cl� du noeud est-elle calcul�e ?
    Les maps sont des collections tri�es par cl�.
    Elles utilisent une fonction de comparaison des cl�s (less) pour permettre le tri.

    Cette m�me fonction permet de rechercher simplement une cl� par dichotomie (puisqu'elles sont tri�es).

  11. #11
    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
    Par d�faut
    Ben .. c'est impl�ment� avec des arbres. C'est de l'algorithmique tr�s classique.

    Quand � m[cl�], cela r�alise une recherche, si rien n'est trouv�, un nouvel �l�ment initialis� � sa valeur par d�faut est rajout�. Au final, l'�l�ment (nouveau ou non) qui va bien est retourn� par r�f�rence.
    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...

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Bump mapping
    Par Francky033 dans le forum DirectX
    R�ponses: 7
    Dernier message: 22/11/2003, 18h35
  2. [EJB2.1 Entity] [BES] Mapping automatique et cl�s �trang�res
    Par Bobby McGee dans le forum Java EE
    R�ponses: 3
    Dernier message: 15/10/2003, 10h33
  3. R�ponses: 2
    Dernier message: 11/07/2003, 18h24
  4. Probl�me avec memory mapping
    Par gemai dans le forum C
    R�ponses: 13
    Dernier message: 04/07/2003, 09h50
  5. Editeur de MAP en delphi pour jeux directX
    Par PetitScorpion dans le forum DirectX
    R�ponses: 5
    Dernier message: 09/07/2002, 18h47

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