इस लेख में हम C++ STL में मल्टीमैप::upper_bound() फंक्शन की कार्यप्रणाली, सिंटैक्स और उदाहरणों पर चर्चा करेंगे।
C++ STL में मल्टीमैप क्या है?
मल्टीमैप्स सहयोगी कंटेनर हैं, जो मैप कंटेनर के समान हैं। यह एक विशिष्ट क्रम में की-वैल्यू और मैप्ड वैल्यू के संयोजन से बनने वाले तत्वों को स्टोर करने की सुविधा भी देता है। एक मल्टीमैप कंटेनर में एक ही कुंजी से जुड़े कई तत्व हो सकते हैं। डेटा को आंतरिक रूप से हमेशा संबंधित कुंजियों की सहायता से क्रमबद्ध किया जाता है।
मल्टीमैप क्या है::upper_bound()?
मल्टीमैप ::अपर_बाउंड () फ़ंक्शन सी ++ एसटीएल में एक इनबिल्ट फ़ंक्शन है, जिसे <मैप> हेडर फ़ाइल में परिभाषित किया गया है। अपर_बाउंड () मल्टीमैप कंटेनर की ऊपरी सीमा में एक पुनरावर्तक देता है। यह फ़ंक्शन एक पुनरावर्तक देता है जो अंतिम तत्व को इंगित करता है जिसे कुंजी के बाद जाना माना जाता है।
सिंटैक्स
Map_name.upper_bound(key& k);
पैरामीटर
यह फ़ंक्शन केवल 1 पैरामीटर स्वीकार करता है -
-
के - वह कुंजी जिसे हम खोजना चाहते हैं।
रिटर्न वैल्यू
यह फ़ंक्शन इटरेटर लौटाता है जो कुंजी 'k' के अगले तत्व की ओर इशारा करता है जिसे कुंजी k के बाद जाना माना जाता है।
इनपुट
map<char, int> newmap; newmap(make_pair(‘a’, 1)); newmap(make_pair(‘b’, 2)); newmap(make_pair(‘c’, 3)); newmap.upper_bound(b);
आउटपुट
c:3
उदाहरण
#include <bits/stdc++.h> using namespace std; int main(){ //creating a multimap multimap<int, int> mul; mul.insert({ 2, 10 }); mul.insert({ 1, 20 }); mul.insert({ 1, 30 }); mul.insert({ 3, 40 }); mul.insert({ 3, 50 }); mul.insert({ 4, 60 }); // upper bound of 1 auto i = mul.upper_bound(1); cout << "Upper bound of key 1 is: "; cout << (*i).first << " "<<(*i).second << endl; // upper bound of 2 i = mul.upper_bound(2); cout << "Upper bound of key 2 is: "; cout << (*i).first << " " <<(*i).second << endl; // upper bound of 3 i = mul.upper_bound(3); cout << "Upper bound of key 3 is: "; cout << (*i).first << " " << (*i).second << endl; return 0; }
आउटपुट
यदि हम उपरोक्त कोड चलाते हैं तो यह निम्न आउटपुट उत्पन्न करेगा -
Upper bound of key 1 is: 2 10 Upper bound of key 2 is: 3 40 Upper bound of key 3 is: 4 60