इस लेख में हम C++ STL में मल्टीसेट ::बराबर_रेंज () फंक्शन की कार्यप्रणाली, सिंटैक्स और उदाहरणों पर चर्चा करेंगे।
C++ STL में मल्टीसेट क्या है?
मल्टीसेट सेट कंटेनर के समान कंटेनर होते हैं, जिसका अर्थ है कि वे एक विशिष्ट क्रम में मानों को सेट की तरह ही कुंजी के रूप में संग्रहीत करते हैं।
मल्टीसेट में मानों को सेट के समान ही कुंजी के रूप में पहचाना जाता है। मल्टीसेट और सेट के बीच मुख्य अंतर यह है कि सेट में अलग-अलग कुंजियाँ होती हैं, जिसका अर्थ है कि कोई भी दो कुंजियाँ समान नहीं हैं, मल्टीसेट में समान कुंजियाँ मान हो सकती हैं।
बाइनरी सर्च ट्री को लागू करने के लिए मल्टीसेट कुंजियों का उपयोग किया जाता है।
मल्टीसेट क्या है::equal_range()?
मल्टीसेट ::बराबर_रेंज () फ़ंक्शन सी ++ एसटीएल में एक इनबिल्ट फ़ंक्शन है, जिसे <सेट> हेडर फ़ाइल में परिभाषित किया गया है। बराबर_रेंज () मल्टीसेट कंटेनर में समान तत्वों की श्रेणी प्राप्त करता है।
यह फ़ंक्शन उस सीमा की सीमा लौटाता है जिसमें कंटेनर में सभी तत्व शामिल होते हैं जो उस पैरामीटर के बराबर होते हैं जो हम फ़ंक्शन को देते हैं।
सिंटैक्स
ms_name.equal_range(value_type& val);
पैरामीटर
फ़ंक्शन एक पैरामीटर स्वीकार करता है -
- वैल - वह मान जिसकी रेंज हम कंटेनर में खोज रहे हैं।
रिटर्न वैल्यू
यह फ़ंक्शन निचली बाउंड और अपर बाउंड की एक जोड़ी देता है जिसके मान बराबर होते हैं
उदाहरण
इनपुट
std::multiset<int> mymultiset = {1, 2, 2, 3, 4}; mymultiset.equal_range(2);
आउटपुट
2 2
उदाहरण
#include <bits/stdc++.h> using namespace std; int main(){ multiset<int> check; check.insert(10); check.insert(20); check.insert(30); check.insert(40); check.insert(50); check.insert(60); check.insert(70); check.insert(80); cout<<"Elements are: "; for (auto i = check.begin(); i!= check.end(); i++) cout << *i << " "; //lower bound and upper bound auto i = check.equal_range(30); cout<<"\nThe lower bound of 30 is " << *i.first; cout<<"\nThe upper bound of 30 is " << *i.second; // last element i = check.equal_range(20); cout<<"\nThe lower bound of 20 is " << *i.first; cout<<"\nThe upper bound of 20 is " << *i.second; i = check.equal_range(80); cout<<"\nThe lower bound of 80 is " << *i.first; cout<<"\nThe upper bound of 80 is " << *i.second; return 0; }
आउटपुट
Elements are: 10 20 30 40 50 60 70 80 The lower bound of 30 is 30 The upper bound of 30 is 40 The lower bound of 20 is 20 The upper bound of 20 is 30 The lower bound of 80 is 80 The upper bound of 80 is 8