STL में C++ में फंक्शनलिटी लिस्ट रिमूव () और लिस्ट रिमूव_इफ () फंक्शन दिखाने का काम दिया गया है।
एसटीएल में सूची क्या है?
सूची कंटेनर हैं जो क्रम में कहीं भी निरंतर समय सम्मिलन और विलोपन की अनुमति देते हैं। Listare को डबल लिंक्ड लिस्ट के रूप में लागू किया गया है। सूची गैर-सन्निहित स्मृति आवंटन की अनुमति देती है। सूची सरणी, वेक्टर और डेक की तुलना में कंटेनर में किसी भी स्थिति में बेहतर सम्मिलन निष्कर्षण और तत्व को स्थानांतरित करना। सूची में तत्व तक सीधी पहुंच धीमी है और सूची आगे_सूची के समान है, लेकिन अग्रेषित सूची वस्तुएं एकल लिंक की गई सूचियां हैं और उन्हें केवल आगे की ओर पुनरावृत्त किया जा सकता है।
निकालें ( ) क्या है?
इस फ़ंक्शन का उपयोग कार्य करने के लिए पैरामीटर में दिए गए मान को निकालने के लिए किया जाता है।
सिंटैक्स
listname.remove(val);
पैरामीटर
वैल - यह हटाए जाने वाले मान को परिभाषित करता है।
उदाहरण
Input List: 1 2 3 3 4 5 Output New List: 1 2 4 5 In this List element 3 is removed. Input List: 5 6 7 8 8 8 9 Output New List: 5 7 8 8 8 9 In this list element 6 in removed
दृष्टिकोण का अनुसरण किया जा सकता है
-
पहले हम सूची घोषित करते हैं।
-
फिर हम सूची प्रिंट करते हैं।
-
फिर हम निकालें() फ़ंक्शन को परिभाषित करते हैं।
उपरोक्त दृष्टिकोण का उपयोग करके हम दिए गए तत्व को हटा सकते हैं।
उदाहरण
// C++ code to demonstrate the working of list remove( ) function in STL #include<iostream.h> #include<list.h> Using namespace std; int main ( ){ List<int> list = { 21, 24, 28, 26, 27, 25 }; // print the list cout<< " list: "; for( auto x = list.begin( ); x != list.end( ); ++x) cout<< *x << " "; // defining remove( ) function list.remove(27); cout<< " New List:”; for( x = list.begin( ); x != list.end( ); ++x) cout<<' " " << *x; return 0; }
आउटपुट
यदि हम उपरोक्त कोड चलाते हैं तो यह निम्न आउटपुट उत्पन्न करेगा
Input - List: 21 24 28 26 27 25 Output - New List: 21 24 28 26 25 Input – List: 45 46 47 48 49 50 Output – New List: 45 46 48 49 50
remove_if( ) फ़ंक्शन क्या है?
इस फ़ंक्शन का उपयोग उन मानों को हटाने के लिए किया जाता है जो विधेय के लिए सही लौटते हैं या पैरामीटर के रूप में पारित शर्त के लिए सही लौटाते हैं।
सिंटैक्स
listname.remove_if(predicate)
पैरामीटर
भविष्यवाणी करें - यह परिभाषित करता है कि एक सशर्त को पैरामीटर के रूप में पारित किया जाता है।
उदाहरण
Input – List: 5 6 7 8 9 10 Output – New List: 5 7 9 In this list we remove all the even elements. Input – List:5 10 15 20 25 30 Output – New List: 5 15 25 In this List we remove all the elements which is divisible by 10.
दृष्टिकोण का अनुसरण किया जा सकता है
-
पहले हम विधेय कार्य की घोषणा करते हैं।
-
फिर हम सूची घोषित करते हैं।
-
फिर हम सूची प्रिंट करते हैं।
-
तब हम remove_if() फ़ंक्शन घोषित करते हैं।
उपरोक्त दृष्टिकोण का उपयोग करके हम किसी भी स्थिति में तत्व को हटा सकते हैं। remove_if ( ) फ़ंक्शन की घोषणा करते समय हम विधेय को पैरामीटर के रूप में पास करते हैं।
उदाहरण
// C++ code to demonstrate the working of list remove_if( ) function in STL #include<iostream.h> #include<list.h> Using namespace std; Bool div3( const int& val){ return( val % 3) == 0); } int main( ){ List<int> list = { 2, 3, 4, 15, 9, 7, 21, 24, 13 }; cout<< " List: "; for( auto x = list.begin( ); x != list.end( ); ++x) cout<< *x << " "; // declaring remove_if( ) function list.remove_if(div3); cout<< " New List:”; for( x= list.begin( ); x != end( ); ++x) cout<< " " << *x; return 0; }
आउटपुट
यदि हम उपरोक्त कोड चलाते हैं तो यह निम्न आउटपुट उत्पन्न करेगा
Input – List: 2 3 4 15 9 7 21 24 13 Output – New List: 2 4 7 13