Sobes.tech
Middle

Comment la taille de la table de hachage est-elle déterminée?

sobes.tech IA

Réponse de l'IA

La taille du tableau de hachage (sa capacité) est généralement déterminée lors de la création d'une instance de la classe. Souvent, cela se fait en spécifiant la capacité initiale dans le constructeur.

Si la capacité initiale n'est pas spécifiée, une valeur par défaut est utilisée (par exemple, 16 pour HashMap en Java).

Lors de l'ajout d'éléments, si le nombre d'éléments dépasse le produit de la capacité actuelle par le facteur de charge (load factor, par défaut 0.75), la table de hachage augmente automatiquement sa taille (généralement en doublant) et recalculer les hachages de tous les éléments (rehashing).

Exemple de constructeur avec capacité initiale spécifiée :

// Création d'un HashMap avec une capacité initiale de 32
Map<String, Integer> map = new HashMap<>(32);

Ainsi, la taille est ajustée dynamiquement en fonction de la configuration initiale et de la charge actuelle.