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

सी ++ एसटीएल में मल्टीमैप ::मिटाएं ()

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

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

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

मल्टीमैप क्या है::इरेज़()?

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

यह फ़ंक्शन तत्वों को अपनी कुंजी, स्थिति या दी गई सीमा से हटा या मिटा सकता है। जब हम इस फ़ंक्शन को चलाते हैं तो मल्टीमैप कंटेनर का आकार हटाए जाने वाले तत्वों की संख्या से कम हो जाता है।

सिंटैक्स

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

पैरामीटर

फ़ंक्शन निम्नलिखित पैरामीटर को स्वीकार करता है -

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

  • यह - पुनरावृत्त स्थिति जहां से हम तत्वों को हटाना चाहते हैं।

  • शुरू करें, खत्म करें - यह सीमा को परिभाषित करता है कि किस स्थिति से किस स्थिति तक तत्वों के सेट को हटाया जाना चाहिए।

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

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

इनपुट

std::multimap<int> mymap;
mymap.insert({‘a’, 10});
mymap.insert({‘b’, 20});
mymap.insert({‘c’, 30});
mymap.erase(‘b’);

आउटपुट

a:10 c:30

उदाहरण

//किसी दी गई कुंजी को मिटा दें

#include<iostream>
#include<map>
using namespace std;
int main(){
   multimap<int,char > mul_1;
   //declaring iterator to traverse the elements
   multimap<int,char>:: iterator i;
   //inserting elements to 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'));
   //calling erase() to delete the element
   mul_1.erase(1);
   mul_1.erase(4);
   mul_1.erase(6);
   mul_1.erase(5);
   //elements of multimap1
   cout<<"Elements in multimap1 are: "<<"\n";
   for( i = mul_1.begin(); i!= mul_1.end(); i++){
      cout<<(*i).first<<" "<< (*i).second << "\n";
   }
}

आउटपुट

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

Elements in multimap1 are:
0 a
2 c
3 d

उदाहरण

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

#include<iostream>
#include<map>
using namespace std;
int main(){
   multimap<int,char > mul_1;
   //declaring iterator to traverse the elements
   multimap<int,char>:: iterator i;
   //inserting elements to 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'));
   //elements in multimap before erasing
   cout<<"Elements in multimap1 are: "<<"\n";
   for( i = mul_1.begin(); i!= mul_1.end(); i++){
      cout<<(*i).first<<" "<< (*i).second << "\n";
   }
   //calling erase() to delete the element
   auto start = mul_1.find(3);
   auto end = mul_1.find(6);
   mul_1.erase(start, end);
   //elements of multimap1 after erasing
   cout<<"Elements in multimap1 are: "<<"\n";
   for( i = mul_1.begin(); i!= mul_1.end(); i++){
      cout<<(*i).first<<" "<< (*i).second << "\n";
   }
}

आउटपुट

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

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;
   //declaring iterator to traverse the elements
   multimap<int,char>:: iterator i;
   //inserting elements to 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'));
   //elements in multimap before erasing
   cout<<"Elements in multimap1 are: "<<"\n";
   for( i = mul_1.begin(); i!= mul_1.end(); i++){
      cout<<(*i).first<<" "<< (*i).second << "\n";
   }
   //calling erase() to delete the element
   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);
   //elements of multimap1 after erasing
   cout<<"Elements in multimap1 are: "<<"\n";
   for( i = mul_1.begin(); i!= mul_1.end(); i++){
      cout<<(*i).first<<" "<< (*i).second << "\n";
   }
}

आउटपुट

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

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 में मल्टीमैप::स्वैप() फंक्शन की कार्यप्रणाली, सिंटैक्स और उदाहरणों पर चर्चा करेंगे। C++ STL में मल्टीमैप क्या है? मल्टीमैप सहयोगी कंटेनर हैं, जो मानचित्र कंटेनर के समान हैं। यह एक विशिष्ट क्रम में की-वैल्यू और मैप्ड वैल्यू के संयोजन से बनने वाले तत्वों को स्टोर करने की सुविधा

  1. सी ++ एसटीएल में नक्शा मिटाएं () फ़ंक्शन

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

  1. STL में मल्टीमैप लागू करने के लिए C++ प्रोग्राम

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