C++ STL 中的 multiset begin() 和 end() 函数
在本文中,我们将讨论 C++ STL 中 multiset::begin() 和 multiset::end() 函数的工作原理、语法和示例。
什么是 C++ STL 中的 multiset?
Multiset 与 set 容器类似,这意味着它们像 set 一样以键的形式存储值,并按照特定顺序排列。
在 multiset 中,值与 set 一样被标识为键。multiset 和 set 之间的主要区别在于,set 的键是唯一的,这意味着没有两个键相同,而在 multiset 中可以存在相同的键值。
Multiset 键用于实现二叉搜索树。
什么是 multiset::begin()?
multiset::begin() 函数是 C++ STL 中的内置函数,它在 <set> 头文件中定义。
此函数返回一个迭代器,该迭代器指向 multiset 容器中的第一个元素。
由于 multiset 容器按升序存储值,因此 begin() 指向根据排序标准确定的容器的第一个元素。
语法
ms_name.begin();
参数
此函数不接受任何参数。
返回值
此函数返回一个迭代器,该迭代器指向与其关联的 multiset 容器的第一个元素。
示例
Input: std::multiset<int> mymultiset = {1, 2, 2, 3, 4}; mymultiset.begin(); Output: 1
示例
#include <bits/stdc++.h> using namespace std; int main() { int arr[] = {2, 4, 1, 3, 8, 5, 6}; multiset<int> check(arr, arr + 7); cout<<"List is : "; for (auto i = check.begin(); i != check.end(); i++) cout << *i << " "; cout<<"\nStarting Element is : "<<*(check.begin()); return 0; }
输出
如果我们运行上面的代码,它将生成以下输出:
List is : 1 2 3 4 5 6 8 Starting Element is : 1
什么是 multiset::end()
multiset::end() 函数是 C++ STL 中的内置函数,它在 <set> 头文件中定义。
此函数返回一个迭代器,该迭代器指向 multiset 容器中末尾之后的那个位置。
末尾之后的元素是指 multiset 容器最后一个元素之后的元素。简而言之,它不指向 multiset 容器中的任何特定元素。此函数通常与 begin() 一起使用以给出 multiset 容器的范围。
语法
ms_name.end();
参数
此函数不接受任何参数。
返回值
此函数返回一个迭代器,该迭代器指向与其关联的 multiset 容器的末尾元素之后的位置。
示例
Input: std::multiset<int> mymultiset = {1, 2, 2, 3, 4}; for( std::multiset<int>::iterator it=mymultiset.begin(); it!=mymultiset.end(); ++it ) Output: 1 2 2 3 4
示例
#include <bits/stdc++.h> using namespace std; int main() { int arr[] = {2, 4, 1, 3, 8, 5, 6}; multiset<int> check(arr, arr + 7); cout<<"List is : "; for (auto i = check.begin(); i != check.end(); i++) cout << *i << " "; return 0; }
输出
如果我们运行上面的代码,它将生成以下输出:
List is : 1 2 3 4 5 6 8
广告