unordered_set bucket() function in C++ STL

The unordered_set::bucket() method is a builtin function in C++ STL which returns the bucket number of a specific element. That is, this function returns the bucket number where a specific element is stored in the unordered_set container.

The bucket is a slot in the unordered_set’s internal hash table where elements are stored.

Note: Buckets in unordered_set are numbered from 0 to n-1, where n is the total number of buckets.



Parameter: This is a mandatory parameter and specifies the value of the element whose bucket number is needed to know in the unordered_set container.

Return Value: This function returns the bucket number of the bucket in the unordered_set container where the element with value element is stored.

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





// C++ program to illustrate the
// unordered_set::bucket() function
#include <iostream>
#include <unordered_set>
using namespace std;
int main()
    unordered_set<int> sampleSet;
    // Inserting elements
    for (auto itr = sampleSet.begin(); itr != sampleSet.end(); itr++) {
        cout << "The Element " << (*itr) << " is present in the bucket: "
             << sampleSet.bucket(*itr);
        cout << endl;
    return 0;



The Element 25 is present in the bucket: 3
The Element 5 is present in the bucket: 5
The Element 10 is present in the bucket: 10
The Element 15 is present in the bucket: 4
The Element 20 is present in the bucket: 9

My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using or mail your article to See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.