C++ STL 中的 multiset count() 函数
在本文中,我们将讨论 C++ STL 中 multiset::count() 函数的工作原理、语法和示例。
什么是 C++ STL 中的 multiset?
Multiset 与 set 容器类似,这意味着它们以键的形式存储值,就像 set 一样,以特定的顺序存储。
在 multiset 中,值与 set 一样被识别为键。multiset 和 set 之间的主要区别在于 set 具有不同的键,这意味着没有两个键是相同的,而在 multiset 中可以有相同的键值。
Multiset 键用于实现二叉搜索树。
什么是 multiset::count()?
multiset::count() 函数是 C++ STL 中的内置函数,它在 <set> 头文件中定义。
此函数计算具有特定键的元素的数量。
一个 multiset 可以具有多个相同键的值,因此当我们想要计算相同键的值的数量时,可以使用 count()。count() 在整个容器中搜索键并返回结果。如果容器中没有我们正在查找的键,则函数返回 0。
语法
ms_name.count(value_type T);
参数
该函数接受一个 multiset 值类型的参数,我们必须在关联的 multiset 容器中搜索该参数。
返回值
此函数返回具有相同键的值的数量。
示例
Input: std::multiset<int> mymultiset = {1, 2, 2, 3, 2, 4}; mymultiset.count(2); Output: 3
示例
#include <bits/stdc++.h> using namespace std; int main() { int arr[] = {1, 2, 3, 1, 1, 1}; multiset<int> check(arr, arr + 6); cout<<"List is : "; for (auto i = check.begin(); i != check.end(); i++) cout << *i << " "; cout << "\n1 is occuring: "<<check.count(1)<<" times"; return 0; }
输出
如果我们运行以上代码,它将生成以下输出:
List is : 1 1 1 1 2 3 1 is occuring 4 times
示例
#include <bits/stdc++.h> using namespace std; int main() { int arr[] = {1, 2, 3, 1, 1, 1, 2, 2}; multiset<int> check(arr, arr + 8); cout<<"List is : "; for (auto i = check.begin(); i != check.end(); i++) cout << *i << " "; cout << "\n1 is occuring: "<<check.count(1)<<" times"; cout << "\n2 is occuring: "<<check.count(2)<<" times"; return 0; }
输出
如果我们运行以上代码,它将生成以下输出:
List is : 1 1 1 1 2 2 2 3 1 is occuring 4 times 2 is occuring 3 times
广告