Skip to content
Related Articles

Related Articles

Improve Article

multiset find() function in C++ STL

  • Difficulty Level : Basic
  • Last Updated : 18 Jul, 2018

The multiset::find() is a built-in function in C++ STL which returns an iterator pointing to the lower_bound of the element which is searched in the multiset container. If the element is not found, then the iterator points to the position past the last element in the set.

Syntax:

multiset_name.find(element)

Parameters: The function accepts one mandatory parameter element which specifies the element to be searched in the multiset container.

Return Value: The function returns an iterator which points to the element which is searched in the multiset container. If the element is not found, then the iterator points to the position just after the last element in the multiset.

Below program illustrates the above function.



Program 1:




// CPP program to demonstrate the
// multiset::find() function
#include <bits/stdc++.h>
using namespace std;
int main()
{
  
    // Initialize multiset
    multiset<int> s;
  
    s.insert(1);
    s.insert(4);
    s.insert(2);
    s.insert(5);
    s.insert(3);
    s.insert(3);
    s.insert(3);
    s.insert(5);
  
    cout << "The set elements are: ";
    for (auto it = s.begin(); it != s.end(); it++)
        cout << *it << " ";
  
    // iterator pointing to
    // position where 2 is
    auto pos = s.find(3);
  
    // prints the set elements
    cout << "\nThe set elements after 3 are: ";
    for (auto it = pos; it != s.end(); it++)
        cout << *it << " ";
  
    return 0;
}
Output:
The set elements are: 1 2 3 3 3 4 5 5 
The set elements after 3 are: 3 3 3 4 5 5

Program 2:




// CPP program to demonstrate the
// multiset::find() function
#include <bits/stdc++.h>
using namespace std;
int main()
{
  
    // Initialize multiset
    multiset<char> s;
  
    s.insert('a');
    s.insert('a');
    s.insert('a');
    s.insert('b');
    s.insert('c');
    s.insert('a');
    s.insert('a');
    s.insert('c');
  
    cout << "The set elements are: ";
    for (auto it = s.begin(); it != s.end(); it++)
        cout << *it << " ";
  
    // iterator pointing to
    // position where 2 is
    auto pos = s.find('b');
  
    // prints the set elements
    cout << "\nThe set elements after b are: ";
    for (auto it = pos; it != s.end(); it++)
        cout << *it << " ";
  
    return 0;
}
Output:
The set elements are: a a a a a b c c 
The set elements after b are: b c c
Want to learn from the best curated videos and practice problems, check out the C++ Foundation Course for Basic to Advanced C++ and C++ STL Course for foundation plus STL.  To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.



My Personal Notes arrow_drop_up
Recommended Articles
Page :