C++ STL中unordered_multiset equal_range()函数

C++ STL中unordered_multiset equal_range()函数

unordered_multiset :: equal_range() 是C++ STL中的内置函数,它返回所有元素都等于给定值的范围。它返回一对迭代器,其中第一个是指向范围下界的迭代器,第二个是指向范围上界的迭代器。如果容器中没有元素等于给定值,则它返回一对,其中下界和上界都指向容器末尾的位置。

语法:

unordered_multiset_name.equal_range(value)

参数: 该函数接受一个要返回的元素值val的范围。

返回值: 它返回一对迭代器。

下面的程序说明了上述函数:

程序1:

//C ++程序,说明
//unordered_multiset :: equal_range()函数
#include 
using namespace std;

int main()
{

    // 声明
    unordered_multiset  sample;

    // 插入元素
    sample.insert(100);
    sample.insert(100);
    sample.insert(100);
    sample.insert(200);
    sample.insert(500);
    sample.insert(500);
    sample.insert(600);

    // 迭代器对,指向包括500的范围,并通过在范围内迭代打印
    auto itr = sample.equal_range(500);
    for (auto it = itr.first; it != itr.second; it++) {
        cout << *it << " ";
    }

    cout << endl;

    // 迭代器对,指向包括100的范围,并通过在范围内迭代打印 
    itr = sample.equal_range(100);
    for (auto it = itr.first; it != itr.second; it++) {
        cout << *it << " ";
    }

    return 0;
}
500 500 
100 100 100

程序2:

//C++程序,说明
//unordered_multiset :: equal_range()函数
#include 
using namespace std;

int main()
{

    // 声明
    unordered_multiset  sample;

    // 插入元素
    sample.insert('a');
    sample.insert('a');
    sample.insert('b');
    sample.insert('c');
    sample.insert('d');
    sample.insert('d');
    sample.insert('d');

    // 迭代器对,指向包括'a'的范围,并通过在范围内迭代打印 
    auto itr = sample.equal_range('a');
    for (auto it = itr.first; it != itr.second; it++) {
        cout << *it << " ";
    }

    cout << endl;

    // 迭代器对,指向包括'd'的范围,并通过在范围内迭代打印
    itr = sample.equal_range('d');
    for (auto it = itr.first; it != itr.second; it++) {
        cout << *it << " ";
    }

    return 0;
}
a a 
d d d

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

C++ 教程