std::
unordered_multiset::bucket_size
公众成员函数 <unordered_set>
size_type bucket_size ( size_type n ) const;
返回存储桶的容量
返回存储桶
n中的元素个数。
桶是容器内部哈希表中的一个槽,元素根据哈希值被分配给它。
bucket中元素的数量会影响访问
bucket中特定元素所需的时间。容器会自动增加桶的数量,
以保持负载系数(即桶的平均大小)低于
max_load_factor。
☲ 参数
-
n
-
桶编号.
这个值应该小于bucket_count。
size_type是一种无符号整型.
☉ 返回值
桶 n中的元素个数.
size_type是一种无符号整型。
☣ 示例
// unordered_multiset::bucket_size
#include <iostream>
#include <string>
#include <unordered_set>
int main ()
{
std::unordered_multiset<std::string> myums =
{"human","klingon","klingon","vulcan","romulan","cardassian"};
unsigned nbuckets = myums.bucket_count();
std::cout << "myums has " << nbuckets << " buckets:\n";
for (unsigned i=0; i<nbuckets; ++i) {
std::cout << "bucket #" << i << " has " << myums.bucket_size(i) << " elements.\n";
}
return 0;
} |
可能的输出(桶的实际数量取决于库的实现):
myset has 7 buckets:
bucket #0 has 0 elements.
bucket #1 has 0 elements.
bucket #2 has 0 elements.
bucket #3 has 2 elements.
bucket #4 has 0 elements.
bucket #5 has 4 elements.
bucket #6 has 0 elements.
✥ 复杂度
桶容量线性。
☣ 迭代器的有效性
不变
🍄 另请参阅
unordered_multiset::bucket_count |
返回存储桶的数量(公众成员函数) |
unordered_multiset::bucket |
定位元素的存储桶(公众成员函数) |
unordered_multiset::size |
返回容量(公众成员函数) |