Open In App

unordered_set reserve() function in C++ STL

Improve
Improve
Like Article
Like
Save
Share
Report

The unordered_set::reserve() method is a builtin function in C++ STL which is used to request capacity change of unordered_set. It sets the number of buckets in the container to contain at least n elements. If n is greater than the current bucket_count multiplied by the max_load_factor, the container’s bucket_count is increased and a rehash is forced. If n is lower than the bucket_count, then the function has no effect on it. 

Syntax:

unordered_set_name.reserve(size_type n)

Parameter: The function accepts a single mandatory parameter n which sets the number of buckets in the container (bucket_count) to the most appropriate to contain at least n elements. 

Return Value: This function doesn’t returns anything. 

Below programs illustrate the unordered_set::reserve() function: 

Program 1: 

CPP




// C++ program to illustrate
// the unordered_set.reserve()
#include <iostream>
#include <string>
#include <unordered_set>
 
using namespace std;
 
int main()
{
    // Declaration of unordered_set
    unordered_set<string> us;
 
    us.reserve(3);
 
    us.insert("geeks");
    us.insert("for");
    us.insert("geeks");
    us.insert("users");
    us.insert("geeksforgeeks");
 
    for (auto it = us.begin(); it != us.end(); it++) {
        cout << *it << " ";
    }
 
    return 0;
}


Output:

geeksforgeeks users geeks for

Program 2: 

CPP




// C++ program to illustrate
// the unordered_set.reserve()
#include <iostream>
#include <string>
#include <unordered_set>
 
using namespace std;
 
int main()
{
    // Declaration of unordered_set
    unordered_set<string> us;
 
    us.reserve(0);
 
    us.insert("geeks");
    us.insert("for");
    us.insert("geeks");
 
    for (auto it = us.begin(); it != us.end(); it++) {
        cout << *it << " ";
    }
 
    return 0;
}


Output:

for geeks

Time complexity: O(N)
 



Last Updated : 07 Jun, 2023
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads