Bibliothèque C ++ Unordered_multimap - fonction max_load_factor ()

La description

La fonction C ++ std::unordered_multimap::max_load_factor() renvoie le facteur de charge maximum actuel pour le conteneur unordered_multimap.

Le facteur de charge est calculé comme suit -

load_factor = umm.size() / umm.bucket_count();

La valeur par défaut de max_load_factor est 1.0

Le facteur de charge influence la probabilité de collision dans la table de hachage. Le conteneur utilise la valeur de max_load_factor comme seuil qui force une augmentation du nombre de buckets et provoque ainsi un rehash.

Déclaration

Voici la déclaration de l'en-tête std :: unordered_multimap :: max_load_factor () de la fonction std :: unordered_map ().

C ++ 11

float max_load_factor() const noexcept;

Paramètres

Aucun

Valeur de retour

Renvoie le facteur de charge maximal.

Exceptions

Cette fonction membre ne lève jamais d'exception.

Complexité temporelle

Constante ie O (1)

Exemple

L'exemple suivant montre l'utilisation de la fonction std :: unordered_multimap :: max_load_factor ().

#include <iostream>
#include <unordered_map>

using namespace std;

int main () {
   unordered_multimap<char, int> umm;

   cout << "max_load_factor = " << umm.max_load_factor() << endl;

   return 0;
}

Compilons et exécutons le programme ci-dessus, cela produira le résultat suivant -

max_load_factor = 1