std::
unordered_multimap::load_factor
公众成员函数 <unordered_map>
float load_factor() const noexcept;
返回负载系数
返回当前unordered_multimap容器中的负载系数。
负载系数是容器中元素的数量与桶的数量(bucket_count)之间的比率:
load_factor = size / bucket_count
负载系数影响哈希表中发生碰撞的概率(即两个元素位于同一个bucket中的概率)。
容器会自动增加桶的数量,以使负载系数低于特定的阈值(它的max_load_factor),从而在每次需要扩展时导致rehash。
要检索或更改此阈值,请使用成员函数max_load_factor。
☲ 参数
-
none
☉ 返回值
返回当前的负载系数
☣ 示例
// unordered_multimap hash table stats
#include <iostream>
#include <unordered_map>
int main ()
{
std::unordered_multimap<int,int> mymap;
std::cout << "size = " << mymap.size() << std::endl;
std::cout << "bucket_count = " << mymap.bucket_count() << std::endl;
std::cout << "load_factor = " << mymap.load_factor() << std::endl;
std::cout << "max_load_factor = " << mymap.max_load_factor() << std::endl;
return 0;
}
|
可能输出:
size = 0
bucket_count = 11
load_factor = 0
max_load_factor = 1
✥ 复杂度
常量
☣ 迭代器的有效性
不变
🍄 另请参阅
unordered_multimap::bucket_count |
返回存储桶的数量(公众成员函数) |
unordered_multimap::bucket_size |
返回存储桶的容量(公众成员函数) |
unordered_multimap::max_load_factor |
获取最大负载系数(公众成员函数) |