Home C&C++函数库 c++ 语法 程序源码 Linux C库

std::

unordered_multiset::bucket_count

公众成员函数  <unordered_set>
size_type bucket_count() const noexcept;

返回存储桶的数量

返回unordered_multiset容器中的桶数。

桶是容器内部哈希表中的一个槽,元素根据其哈希值被分配。

桶的数量直接影响容器哈希表的负载系数 load factor (从而影响碰撞的概率)。容器会自动增加桶的数量, 以保持负载系数低于特定的阈值(它的max_load_factor),每次需要增加桶的数量时都会导致rehash。

☲  参数


none

☉  返回值



当前桶的数量.
size_type是一种无符号整型。

☣  示例



// unordered_multiset::bucket_count
#include <iostream>
#include <string>
#include <unordered_set>

int main ()
{
  std::unordered_multiset<std::string> myums =
  {"Klingon","Vulcan","Klingon","Cardassian","Vulcan","Human"};

  unsigned n = myums.bucket_count();

  std::cout << "myums has " << n << " buckets.\n";

  for (unsigned i=0; i<n; ++i) {
    std::cout << "bucket #" << i << " contains:";
    for (auto it = myums.begin(i); it!=myums.end(i); ++it)
      std::cout << " " << *it;
    std::cout << "\n";
  }

  return 0;
}

输出:
myums has 7 buckets.
bucket #0 contains: Vulcan Vulcan
bucket #1 contains:
bucket #2 contains:
bucket #3 contains: Cardassian
bucket #4 contains:
bucket #5 contains: Human Klingon Klingon
bucket #6 contains:

✥ 复杂度



常量

☣ 迭代器的有效性



不变

🍄  另请参阅



unordered_multiset::bucket 定位元素的存储桶(公众成员函数)
unordered_multiset::bucket_size 返回存储桶的大小(公众成员函数)
unordered_multiset::load_factor 返回存储桶的元素平均数量(负载系数)(公众成员函数)
unordered_multiset::max_load_factor 获取或设置存储桶最大的负载系数(公众成员函数)

联系我们 免责声明 关于CandCplus 网站地图