STL में List क्या है
List एक डेटा संरचना है जो अनुक्रम में कहीं भी निरंतर समय सम्मिलन और विलोपन की अनुमति देती है। Lists को डबल लिंक्ड सूचियों के रूप में कार्यान्वित किया जाता है। Lists गैर-सन्निकट मेमोरी आवंटन की अनुमति देती हैं। List सरणी, वेक्टर और deque की तुलना में किसी भी स्थिति में तत्व के सम्मिलन, निष्कर्षण और स्थानांतरण में बेहतर प्रदर्शन करती है। List में तत्व तक सीधी पहुंच धीमी होती है और list forward_list के समान होती है, लेकिन forward list ऑब्जेक्ट एकल लिंक्ड सूचियाँ होती हैं और उन्हें केवल आगे की ओर पुनरावृत्त किया जा सकता है।
list::resize() क्या है?
list::resize() C++ STL में एक अंतर्निहित फ़ंक्शन है जिसे हेडर फ़ाइल में घोषित किया गया है। resize() का उपयोग सूची कंटेनर का आकार बदलने के लिए किया जाता है। यह कंटेनर का आकार बदलता है, ताकि इसमें फ़ंक्शन के तर्क में दिए गए तत्वों की संख्या हो।
सिं्टैक्स
list_name.resize(int n);
या
list_name.resize(int n, const value_type &val);
यह फ़ंक्शन एक या दो पैरामीटर स्वीकार कर सकता है।
पैरामीटर
- n - यह एक पूर्णांक प्रकार है जो नया कंटेनर आकार (तत्वों की संख्या) परिभाषित करता है।
- val - वह ऑब्जेक्ट जिसकी सामग्री कंटेनर में सभी स्थानों पर कॉपी की जाती है।
रिटर्न मान
यह फ़ंक्शन कुछ भी नहीं लौटाता। यह केवल कंटेनर का आकार बदलता है।
उदाहरण
#include <bits/stdc++.h> using namespace std; int main(){ //create a list list<int> myList; //insert elements to the list myList.push_back(1); myList.push_back(2); myList.push_back(3); myList.push_back(4); //elemets in th list before Resize cout << "List elements are : "; for (auto i = myList.begin(); i!= myList.end(); i++) cout << *i << " "; //Resizing list myList.resize(5); cout<<"\nList after resize: "; for (auto i = myList.begin(); i!= myList.end(); i++) cout << *i << " "; //Resizing list again myList.resize(6); cout<<"\nList after resizing it again : "; for (auto i = myList.begin(); i != myList.end(); i++) cout << *i << " "; return 0; }आउटपुट
यदि हम उपरोक्त कोड चलाते हैं तो यह निम्न आउटपुट उत्पन्न करेगा
List elements are : 1 2 3 4 List after resize : 1 2 3 4 0 List after resizing it again : 1 2 3 4 0 0