C++ STL में unordered_multimap rehash(N) फ़ंक्शन कंटेनर में बकेट की संख्या को n या अधिक पर सेट करता है। यदि n कंटेनर में बाल्टियों की वर्तमान संख्या से अधिक है, तो एक पुनरावर्तन को बाध्य किया जाता है। नई बकेट काउंट या तो n के बराबर या उससे अधिक हो सकती है। फ़ंक्शन का बकेट काउंट पर कोई प्रभाव नहीं पड़ सकता है और यदि n कंटेनर में बाल्टियों की वर्तमान संख्या से कम है, तो रिहैश को बाध्य नहीं कर सकता है। रेहाश () कुछ भी नहीं लौटाता है और n को एक पैरामीटर के रूप में लेता है जो कंटेनर हैश टेबल के लिए न्यूनतम संख्या में बकेट निर्दिष्ट करता है।
एल्गोरिदम
Begin Declaring an empty map container m. Force the reahash() function to restrict number of bucket in a container to a minimum amount. Insert the key value pairs in the container atleast same as the minimum number of buckets. Print the elements in the map container. End.
उदाहरण कोड
#include<iostream> #include <bits/stdc++.h> using namespace std; int main() { unordered_map<char, int> m; m.rehash(1); m.insert (pair<char, int>('b', 10)); m.insert (pair<char, int>('a', 20)); cout << "The size is: " << m.size(); cout << "\nKey and values are: "; for (auto it = m.begin(); it != m.end(); it++) { cout << "{" << it->first << ", " << it->second << "} "; } return 0; }
आउटपुट
The size is: 2 Key and values are: {a, 20} {b, 10}