Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C++

C++ STL में multimap find()


इस लेख में हम C++ STL में multimap::find() फ़ंक्शन के कार्य, सिंटैक्स और उदाहरणों पर चर्चा करेंगे।

C++ STL में मल्टीमैप क्या है?

मल्टीमैप सहायक कंटेनर हैं, जो मैप कंटेनर के समान हैं। यह कुंजी मान और मैप्ड मान के संयोजन से बने तत्वों को एक विशिष्ट क्रम में संग्रहीत करने की सुविधा भी प्रदान करता है। एक मल्टीमैप कंटेनर में एक ही कुंजी से जुड़े कई तत्व हो सकते हैं। डेटा आंतरिक रूप से इसकी संबद्ध कुंजियों की मदद से हमेशा क्रमबद्ध होता है।

multimap::find() क्या है?

multimap::find() C++ STL में एक अंतर्निहित फ़ंक्शन है, जिसे हेडर फ़ाइल में परिभाषित किया गया है। find() कंटेनर में उन तत्वों को खोजता है जो कुंजी K से जुड़े होते हैं। यह फ़ंक्शन कंटेनर में एकल तत्व की ओर इशारा करने वाला एक इटरेटर लौटाता है। यदि तत्व कंटेनर में मिलता है तो यह एक इटरेटर लौटाता है।

सिंटैक्स

iterator multimap_name.find(key);

पैरामीटर्स

यह एक पैरामीटर कुंजी स्वीकार करता है जो कंटेनर में खोजी जाने वाली कुंजी को निर्दिष्ट करता है।

रिटर्न मान

यह फ़ंक्शन एक इटरेटर लौटाता है जो उस स्थिति को संदर्भित करता है जहां कुंजी कंटेनर में मौजूद है।

इनपुट

multimap<char, int> newmap;
newmap.insert(make_pair('A', 22));
newmap.insert(make_pair('B', 78));
newmap.insert(make_pair('C', 66));
newmap.insert(make_pair('D', 81));
newmap.insert(make_pair('E', 43));
newmap.find('D');

आउटपुट

81

इनपुट

multimap<char, int> newmap;
newmap.insert(make_pair(1, 15));
newmap.insert(make_pair(2, 18));
newmap.insert(make_pair(3, 45));
newmap.insert(make_pair(4, 66));
newmap.find(4);

आउटपुट

66

अनुसरण किया जा सकने वाला दृष्टिकोण

  • सबसे पहले हम मैप को इनिशियलाइज़ करते हैं।
  • फिर हम कुंजी के साथ तत्व डालते हैं।
  • फिर हम मैप फाइंड फ़ंक्शन का उपयोग करके कुंजी की स्थिति ढूंढते हैं।
  • फिर हम वांछित कुंजी को उसके तत्व के साथ प्रिंट करते हैं।

उपरोक्त दृष्टिकोण का उपयोग करके हम कंटेनर में किसी भी कुंजी को ढूंढ सकते हैं, हम कुंजी की स्थिति को एक सीमा में भी ढूंढ सकते हैं।

उदाहरण

#include <iostream>
#include <map>
using namespace std;

int main() {
    multimap<char, int> mp;
    // तत्व डालें
    mp.insert({'b', 23});
    mp.insert({'a', 46});
    mp.insert({'c', 78});
    mp.insert({'e', 11});
    mp.insert({'d', 34});
    cout << "कुंजी c के बाद कुंजी मान:\n";
    cout << "कुंजी\t तत्व";
    for (auto i = mp.find('c'); i != mp.end(); i++)
        cout << i->first << "\t" << i->second << '\n';
    return 0;
}

आउटपुट

यदि हम उपरोक्त कोड चलाते हैं तो यह निम्नलिखित आउटपुट उत्पन्न करेगा:

कुंजी तत्व
c 78
d 34
e 11

उदाहरण

#include <iostream>
#include <map>
using namespace std;

int main() {
    multimap<char, int> mp;
    // तत्व डालें
    mp.insert({'1', 33});
    mp.insert({'2', 66});
    mp.insert({'3', 55});
    mp.insert({'4', 11});
    mp.insert({'5', 44});
    cout << "कुंजी 4 के बाद कुंजी मान:\n";
    cout << "कुंजी\t तत्व";
    for (auto i = mp.find('4'); i != mp.end(); i++)
        cout << i->first << "\t" << i->second << '\n';
    return 0;
}

आउटपुट

यदि हम उपरोक्त कोड चलाते हैं तो यह निम्नलिखित आउटपुट उत्पन्न करेगा:

कुंजी तत्व
4 11
5 44

  1. - C++ STL में deque_insert()

    Deque क्या है?Deque डबल एंडेड कतारें हैं जो अनुक्रम कंटेनर हैं जो दोनों छोरों पर विस्तार और संकुचन की कार्यक्षमता प्रदान करती हैं। एक कतार डेटा संरचना उपयोगकर्ता को केवल अंत में डेटा डालने और सामने से डेटा हटाने की अनुमति देती है। बस स्टॉप पर कतारों की सादृश्यता लें जहां व्यक्ति को केवल अंत से कतार

  1. - C++ STL में list insert()

    STL में List क्या हैList कंटेनर हैं जो अनुक्रम में कहीं भी निरंतर समय सम्मिलन और विलोपन की अनुमति देते हैं। List को डबल लिंक्ड सूचियों के रूप में कार्यान्वित किया जाता है। List गैर-सन्निकट मेमोरी आवंटन की अनुमति देते हैं। List सरणी, वेक्टर और deque की तुलना में किसी भी स्थिति में तत्व के सम्मिलन, नि

  1. - C++ STL में emplace बनाम insert

    emplace ऑपरेशन ऑब्जेक्ट की अनावश्यक कॉपी से बचाता है और इन्सर्ट ऑपरेशन की तुलना में अधिक कुशलता से इन्सर्शन करता है। इन्सर्ट ऑपरेशन एक ऑब्जेक्ट के संदर्भ को लेता है। एल्गोरिदम Begin सेट घोषित करें। पेयर इन्सर्ट करने के लिए emplace() का उपयोग करें। emplace() का उपयोग करके पेयर इन्सर्ट कर