C++ STL 中的 unordered_multimap bucket_size() 函数
unordered_multimap::bucket_size() 是 C++ STL 中的内置函数,它返回桶 n 中的元素总数。
语法:
unordered_multimap_name.bucket_size(n)
参数: 该函数接受一个参数 n ,它指定要返回计数的桶编号。
返回值: 返回无符号整数类型,表示具有桶编号 n 的桶中的元素数目。
下面的程序说明了上面的函数:
程序1:
//C++程序,说明unordered_multimap::bucket_size()
#include <bits/stdc++.h>
using namespace std;
int main()
{
//声明
unordered_multimap<int, int> sample;
//插入元素
sample.insert({ 10, 100 });
sample.insert({ 10, 100 });
sample.insert({ 20, 200 });
sample.insert({ 30, 300 });
sample.insert({ 15, 150 });
cout << "桶的总数: "
<< sample.bucket_count();
//按桶的方式打印所有元素
for (int i = 0; i < sample.bucket_count(); i++) {
cout << "\n桶 " << i
<< " 中的元素数 = " << sample.bucket_size(i);
}
return 0;
}
桶的总数: 7
桶 0 中的元素数 = 0
桶 1 中的元素数 = 1
桶 2 中的元素数 = 1
桶 3 中的元素数 = 2
桶 4 中的元素数 = 0
桶 5 中的元素数 = 0
桶 6 中的元素数 = 1
程序2:
//C++程序,说明unordered_multimap::bucket_size()
#include <bits/stdc++.h>
using namespace std;
int main()
{
//声明
unordered_multimap<char, char> sample;
//插入元素
sample.insert({ 'a', 'b' });
sample.insert({ 'a', 'b' });
sample.insert({ 'b', 'c' });
sample.insert({ 'r', 'a' });
sample.insert({ 'c', 'b' });
cout << "桶的总数: "
<< sample.bucket_count();
//按桶的方式打印所有元素
for (int i = 0; i < sample.bucket_count(); i++) {
cout << "\n桶 " << i
<< " 中的元素数 = " << sample.bucket_size(i);
}
return 0;
}
桶的总数: 7
桶 0 中的元素数 = 1
桶 1 中的元素数 = 1
桶 2 中的元素数 = 1
桶 3 中的元素数 = 0
桶 4 中的元素数 = 0
桶 5 中的元素数 = 0
桶 6 中的元素数 = 2