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

Langage Java Discussion :

hashSet facteur de charge


Sujet :

Langage Java

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    315
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2009
    Messages : 315
    Par défaut hashSet facteur de charge
    Bonjour je suis en train de réviser les Collections et plus particulièrement les SET

    Je trouve dans la Documentation 2 versions concernant le facteur de charge
    pour le type hashSet

    1) http://bruce-eckel.developpez.com/li...chap=10&page=9

    Extrait : "... Un facteur de charge plus élevé réduit l'espace requis par une table mais augmente le coût d'une recherche, ..."

    2) http://manu.kegtux.org/Java/Tutoriel...llections.html
    Extrait : "... On nomme "facteur de charge" le rapport entre le nombre d'éléments de la collection et le nombre de seaux. Plus ce facteur est grand, moins statistiquement, nous obtenons des seaux contenant plusieurs éléments ; par contre, plus il est grand, plus le tableau de références des seaux occupe de l'espace. ..."

    Ces 2 extraits me paraissent opposés et je pense que le premier est correct, pas le second

    Merci de me donner vote avis

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    De fait. De toute façon, le facteur de charge est un rapport de deux valeurs : le nombre d'éléments sur le nombre de seaux.

    Logiquement plus il est grand, moins il y a de seaux et donc moins le tableau est grand, donc moins il occupe d'espace.

    Mais on a tôt fait d'oublier dans quel sens on fait le rapport, et si on inverse le sens, on inverse les conclusions. C'est ce qu'a fait le 2)
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    sceau?? me dite pas que c'est comme ça que que certains on traduit hash en Français?

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Citation Envoyé par tchize_ Voir le message
    sceau?? me dite pas que c'est comme ça que que certains on traduit hash en Français?
    seau. C'est comme ça qu'ils traduisent bucket, de façon assez littérale.

    Le bucket est l'un des concepts de la table de hachage : c'est une case du tableau. Une table de hachage de capacité 100, a 100 seaux dans lesquels on peut mettre des éléments.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    315
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2009
    Messages : 315
    Par défaut on inverse le sens, on inverse les conclusions. C'est ce qu'a fait le 2)
    Bonjour thelvin , bonjour tchize,

    Extrait 2 : plus le facteur est grand, plus le tableau de références des seaux occupe de l'espace. ..."

    C'est quoi exactement le tableau de références des seaux ?

    - c'est l'ensemble des seaux et leur hashcode ?

    - c'est chaque seau avec chaque élément qui compose la liste chainée ?

    Finalement , le facteur de charge joue-t-il un rôle très important ou faut-il le mettre à 0.75 dans la majorité des cas ?

    Merci de vos réponses

  6. #6
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Citation Envoyé par michelp3 Voir le message
    Extrait 2 : plus le facteur est grand, plus le tableau de références des seaux occupe de l'espace. ..."

    C'est quoi exactement le tableau de références des seaux ?

    - c'est l'ensemble des seaux et leur hashcode ?

    - c'est chaque seau avec chaque élément qui compose la liste chainée ?
    Dans le cas présent, vu qu'il s'agit d'occuper plus ou moins d'espace, disons que c'est l'ensemble des seaux.
    Les seaux, ce ne sont jamais que les cases d'un tableau parfaitement normal. Plus il y a de seaux plus ce tableau est grand, et donc plus il occupe de l'espace.

    Citation Envoyé par michelp3 Voir le message
    Finalement , le facteur de charge joue-t-il un rôle très important ou faut-il le mettre à 0.75 dans la majorité des cas ?
    Je ne sais pas . En théorie on pourrait avoir des cas où il serait préférable d'aller plus dans un sens ou dans l'autre.
    Mais en pratique ça a jamais été là-dessus que j'ai dû optimiser quelque chose.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    315
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2009
    Messages : 315
    Par défaut
    Merci Thelvin, bonne journée ...ensoleillée (chez nous, il devrait être présent aujourd'hui !!!)

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

Discussions similaires

  1. Réponses: 8
    Dernier message: 19/03/2008, 19h08
  2. Charge CPU avec prog opengl + win32
    Par TibobiT dans le forum MFC
    Réponses: 2
    Dernier message: 12/05/2004, 19h26
  3. [SQL Serveur] prise en charge de l'arabe
    Par lamiae18 dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 26/03/2004, 12h33
  4. DLL Borland chargée par Windows: crash
    Par bocher dans le forum C++Builder
    Réponses: 2
    Dernier message: 08/01/2004, 12h09
  5. Charge de la machine
    Par Gogoye dans le forum C
    Réponses: 4
    Dernier message: 06/10/2003, 12h17

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