C++ Unordered_map 库 - bucket_size() 函数
描述
C++ 函数 std::unordered_map::bucket_size() 返回第 nth 桶中存在的元素数。
声明
以下是 std::unordered_map::bucket_size() 函数形式 std::unordered_map 头的声明。
C++11
size_type bucket_size(size_type n) const;
参数
n − 桶编号。
返回值
返回当前存储桶中的元素总数。
时间复杂度
线性,即 O(n)
示例
以下示例显示了 std::unordered_map::bucket_size() 函数的用法。
#include <iostream> #include <unordered_map> using namespace std; int main(void) { unordered_map<char, int> um = { {'a', 1}, {'b', 2}, {'c', 3}, {'d', 4}, {'e', 5} }; for (int i = 0; i < um.bucket_count(); ++i) cout << "Bucket " << i << " contains " << um.bucket_size(i) << " elements." << endl; return 0; }
让我们编译并运行上面的程序,这将产生以下结果 −
Bucket 0 contains 1 elements. Bucket 1 contains 1 elements. Bucket 2 contains 1 elements. Bucket 3 contains 0 elements. Bucket 4 contains 0 elements. Bucket 5 contains 0 elements. Bucket 6 contains 0 elements. Bucket 7 contains 0 elements. Bucket 8 contains 0 elements. Bucket 9 contains 1 elements. Bucket 10 contains 1 elements.