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

C++ STL में multimap::erase()


C++ STL में Multimap क्या है?

Multimap एक associative container है जो map container के समान होता है। यह key-value और mapped value के संयोजन से बने तत्वों को एक विशिष्ट क्रम में संग्रहीत करता है। एक multimap container में एक ही key से जुड़े कई तत्व हो सकते हैं। डेटा आंतरिक रूप से हमेशा उससे जुड़ी keys की मदद से सॉर्ट किया जाता है।

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

multimap::erase() C++ STL में एक अंतर्निहित फंक्शन है, जो <map> हेडर फाइल में परिभाषित है। erase() का उपयोग multimap container से तत्वों को हटाने या मिटाने के लिए किया जाता है।

यह फंक्शन तत्वों को उनकी key, स्थिति या दी गई range द्वारा हटा सकता है। जब हम इस फंक्शन को चलाते हैं तो multimap container का आकार हटाए जा रहे तत्वों की संख्या से कम हो जाता है।

सिंटैक्स

multimap_name.erase(key_type key);
multimap_name.erase(const_iterator it);
multimap_name.erase(const_iterator start, const_iterator end);

पैरामीटर्स

  • key - यह उस key की स्थिति है जिसके तत्व हम हटाना चाहते हैं।

  • it - वह iterator स्थिति जहां से हम तत्वों को हटाना चाहते हैं।

  • start, end - यह उस range को परिभाषित करता है जिससे किस स्थिति से किस स्थिति तक तत्वों का समूह हटाया जाना चाहिए।

रिटर्न वैल्यू

यह फंक्शन संबंधित container से हटाए जा रहे तत्वों की संख्या लौटाता है।

उदाहरण

// दी गई key को मिटाना

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

int main() {
    multimap<int, char> mul_1;
    
    // तत्वों को पार करने के लिए iterator घोषित करना
    multimap<int, char>::iterator i;
    
    // multimap1 में तत्व सम्मिलित करना
    mul_1.insert(make_pair(0, 'a'));
    mul_1.insert(make_pair(1, 'b'));
    mul_1.insert(make_pair(2, 'c'));
    mul_1.insert(make_pair(3, 'd'));
    mul_1.insert(make_pair(4, 'e'));
    mul_1.insert(make_pair(5, 'f'));
    mul_1.insert(make_pair(6, 'g'));
    
    // तत्व हटाने के लिए erase() कॉल करना
    mul_1.erase(1);
    mul_1.erase(4);
    mul_1.erase(6);
    mul_1.erase(5);
    
    // multimap1 के तत्व
    cout << "Elements in multimap1 are: " << "\n";
    for (i = mul_1.begin(); i != mul_1.end(); i++) {
        cout << (*i).first << " " << (*i).second << "\n";
    }
    
    return 0;
}

आउटपुट

Elements in multimap1 are:
0 a
2 c
3 d

उदाहरण

// दी गई range के भीतर तत्वों को मिटाना

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

int main() {
    multimap<int, char> mul_1;
    
    // तत्वों को पार करने के लिए iterator घोषित करना
    multimap<int, char>::iterator i;
    
    // multimap1 में तत्व सम्मिलित करना
    mul_1.insert(make_pair(0, 'a'));
    mul_1.insert(make_pair(1, 'b'));
    mul_1.insert(make_pair(2, 'c'));
    mul_1.insert(make_pair(3, 'd'));
    mul_1.insert(make_pair(4, 'e'));
    mul_1.insert(make_pair(5, 'f'));
    mul_1.insert(make_pair(6, 'g'));
    
    // मिटाने से पहले multimap में तत्व
    cout << "Elements in multimap1 are: " << "\n";
    for (i = mul_1.begin(); i != mul_1.end(); i++) {
        cout << (*i).first << " " << (*i).second << "\n";
    }
    
    // तत्व हटाने के लिए erase() कॉल करना
    auto start = mul_1.find(3);
    auto end = mul_1.find(6);
    mul_1.erase(start, end);
    
    // मिटाने के बाद multimap1 के तत्व
    cout << "Elements in multimap1 are: " << "\n";
    for (i = mul_1.begin(); i != mul_1.end(); i++) {
        cout << (*i).first << " " << (*i).second << "\n";
    }
    
    return 0;
}

आउटपुट

Elements in multimap1 are:
0 a
1 b
2 c
3 d
4 e
5 f
6 g
Elements in multimap1 are:
0 a
1 b
2 c
6 g

उदाहरण

// दी गई स्थिति पर तत्व मिटाना

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

int main() {
    multimap<int, char> mul_1;
    
    // तत्वों को पार करने के लिए iterator घोषित करना
    multimap<int, char>::iterator i;
    
    // multimap1 में तत्व सम्मिलित करना
    mul_1.insert(make_pair(0, 'a'));
    mul_1.insert(make_pair(1, 'b'));
    mul_1.insert(make_pair(2, 'c'));
    mul_1.insert(make_pair(3, 'd'));
    mul_1.insert(make_pair(4, 'e'));
    mul_1.insert(make_pair(5, 'f'));
    mul_1.insert(make_pair(6, 'g'));
    
    // मिटाने से पहले multimap में तत्व
    cout << "Elements in multimap1 are: " << "\n";
    for (i = mul_1.begin(); i != mul_1.end(); i++) {
        cout << (*i).first << " " << (*i).second << "\n";
    }
    
    // तत्व हटाने के लिए erase() कॉल करना
    auto first = mul_1.find(1);
    mul_1.erase(first);
    auto second = mul_1.find(6);
    mul_1.erase(second);
    auto third = mul_1.find(2);
    mul_1.erase(third);
    
    // मिटाने के बाद multimap1 के तत्व
    cout << "Elements in multimap1 are: " << "\n";
    for (i = mul_1.begin(); i != mul_1.end(); i++) {
        cout << (*i).first << " " << (*i).second << "\n";
    }
    
    return 0;
}

आउटपुट

Elements in multimap1 are:
0 a
1 b
2 c
3 d
4 e
5 f
6 g
Elements in multimap1 are:
0 a
3 d
4 e
5 f
  1. - C++ STL में multimap::swap()

    C++ STL में Multimap क्या है? Multimap एक associative container है जो map container के समान होता है। यह key-value और mapped value के संयोजन से बने तत्वों को एक विशिष्ट क्रम में संग्रहीत करता है। एक multimap container में एक ही key से जुड़े कई तत्व हो सकते हैं। डेटा आंतरिक रूप से हमेशा उससे जुड़ी ke

  1. - C++ STL में map::erase() फंक्शन

    इस लेख में हम C++ STL में map::erase() फंक्शन के कार्य, सिंटैक्स और उदाहरणों पर चर्चा करेंगे।C++ STL में मैप क्या है?मैप्स एसोसिएटिव कंटेनर हैं, जो की-वैल्यू और मैप्ड वैल्यू के संयोजन से बने तत्वों को एक विशिष्ट क्रम में संग्रहीत करने की सुविधा प्रदान करते हैं। एक मैप कंटेनर में डेटा आंतरिक रूप से ह

  1. - C++ STL में Multimap का कार्यान्वयन

    मल्टीमैप मैप के समान है इस अपवाद के साथ कि कई तत्वों के समान कुंजी हो सकते हैं। कुंजी मान और मैप्ड मान जोड़ी को मल्टीमैप में अद्वितीय होना चाहिए। उपयोग किया गया फंक्शन - mm::find() – यदि मल्टीमैप में key b वाला तत्व मिलता है तो उसका इटरेटर लौटाता है, अन्यथा end इटरेटर लौटाता है। mm::erase() – मल्ट