Skip to content
Related Articles

Related Articles

Improve Article
multiset begin() and end() function in C++ STL
  • Difficulty Level : Basic
  • Last Updated : 19 Jul, 2018
  1. The multiset::begin() is a built-in function in C++ STL which returns an iterator pointing to the first element in the multiset container. Since multiset always contains elements in an ordered way, begin() always points to the first element according to the sorting criterion.

    Syntax:

    iterator multiset_name.begin()
    

    Parameters: The function does not accept any parameters.

    Return value: The function returns an iterator pointing to the first element in the container.

    Below program illustrate the above-mentioned function:




    // CPP program to demonstrate the
    // multiset::begin() function
    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
      
        int arr[] = { 14, 10, 15, 11, 10 };
      
        // initializes the set from an array
        multiset<int> s(arr, arr + 5);
      
        // Print the first element
        cout << "The first element is: " << *(s.begin()) << endl;
      
        // prints all elements in set
        for (auto it = s.begin(); it != s.end(); it++)
            cout << *it << " ";
      
        return 0;
    }
    Output:



    The first element is: 10
    10 10 11 14 15
    
  2. The multiset::end() is a built-in function in C++ STL which returns an iterator pointing to the position past the last element in the container.
    Syntax:
    iterator multiset_name.end()
    

    Parameters: The function does not accept any parameters.

    Return value: The function returns an iterator pointing to the position past the last element in the container in the multiset container.

    Below program illustrate the above-mentioned function:




    // CPP program to demonstrate the
    // multiset::end() function
    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
      
        int arr[] = { 14, 10, 15, 11, 10, 12, 17, 12 };
      
        // initializes the set from an array
        multiset<int> s(arr, arr + 8);
      
        // prints all elements in set
        for (auto it = s.begin(); it != s.end(); it++)
            cout << *it << " ";
      
        return 0;
    }
    Output:
    10 10 11 12 12 14 15 17
    
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 :