Метод bucket_count
Метод bucket_count возвращает текущее количество корзин (buckets), которые используются контейнером unordered_map для хранения элементов. Корзины - это внутренние ячейки хеш-таблицы, в которые распределяются пары ключ-значение. Метод не принимает параметров и не изменяет сам контейнер.
Синтаксис
size_t bucket_count() const;
Пример
Давайте создадим пустой unordered_map и посмотрим, сколько корзин он имеет по умолчанию:
#include <iostream>
#include <unordered_map>
using namespace std;
int main()
{
unordered_map<string, int> umap;
cout << umap.bucket_count() << endl;
return 0;
}
Результат выполнения кода:
1
Пример
Давайте добавим несколько элементов в unordered_map и проследим, как изменится количество корзин:
#include <iostream>
#include <unordered_map>
using namespace std;
int main()
{
unordered_map<string, int> umap;
umap["a"] = 1;
umap["b"] = 2;
umap["c"] = 3;
umap["d"] = 4;
umap["e"] = 5;
cout << umap.bucket_count() << endl;
return 0;
}
Результат выполнения кода:
13
Смотрите также
-
класс
unordered_map,
который представляет собой хеш-таблицу -
метод
load_factor,
который возвращает коэффициент загрузки -
метод
rehash,
который задает количество корзин -
метод
reserve,
который резервирует место под элементы