मैं एक सहायक समारोह, copyList नामित लागू करने के लिए, एक पैरामीटर, एक ListNode के लिए सूचक होने की जरूरत है। इस फ़ंक्शन को मूल लिंक्ड सूची की एक प्रति के पहले नोड में पॉइंटर वापस करने की आवश्यकता है। इसलिए, दूसरे शब्दों में, मुझे सी ++ में एक फ़ंक्शन को कोड करने की आवश्यकता है जो एक लिंक्ड सूची का हेडर नोड लेता है और पूरी लिंक्ड सूची की प्रतिलिपि बनाता है, जो नए हेडर नोड में पॉइंटर लौटाता है। मुझे इस समारोह को लागू करने में मदद की ज़रूरत है और यह मेरे पास अभी है।एक समारोह कोडिंग सी में किसी लिंक किए गए-सूची की प्रतिलिपि करने के ++
struct Listnode {
Student *student;
Listnode *next;
};
नोट:: एक और पहलू है कि मैं इस समारोह के साथ में चल रहा एक स्थानीय चर के लिए सूचक लौटने का विचार है
Listnode *SortedList::copyList(Listnode *L) {
Listnode *current = L; //holds the current node
Listnode *copy = new Listnode;
copy->next = NULL;
//traverses the list
while (current != NULL) {
*(copy->student) = *(current->student);
*(copy->next) = *(current->next);
copy = copy->next;
current = current->next;
}
return copy;
}
इसके अलावा, इस Listnode संरचना के साथ मैं काम कर रहा हूँ है।
+1 एक अच्छी तरह से प्रस्तुत प्रश्न के लिए! पहला काउंटर-प्रश्न: क्या आप एक एकल नोड आवंटित करके एक संपूर्ण सूची कॉपी कर सकते हैं? दूसरी, तीसरी, ... और nth नोड सामग्री की प्रतियां कहाँ संग्रहित की जाएंगी? –
धन्यवाद, मुझे यकीन नहीं है कि क्या मैं आपके सवालों का पूरी तरह उत्तर दे रहा हूं लेकिन मैं अपना सर्वश्रेष्ठ प्रयास करूंगा: - मुझे सूची की पूरी तरह से नई प्रतिलिपि बनाना है। इसलिए, मैं हेडर नोड की प्रतिलिपि नहीं बना सकता क्योंकि मेरी प्रतिलिपि सूची में वही संदर्भ होंगे। मैं सिर्फ मूल्यों की प्रतिलिपि बनाना चाहता हूं। - साथ ही, प्रतिलिपि सूची में पहली सूची नोड में मूल सूची में पहली सूची नोड के समान मान होना चाहिए। लेकिन कॉपी की गई सूची को मूल सूची में किसी भी नोड्स को संदर्भित/इंगित नहीं करना चाहिए। –
नई सूची को पुराने किसी भी एनओडीईएस को इंगित नहीं करना चाहिए, लेकिन नए नोड्स पुराने सामग्री को इंगित करना चाहिए? इस मामले में "सामग्री" वस्तुएं "छात्र" वस्तुएं हैं। असल में, क्या आप छात्रों को भी कॉपी कर रहे हैं? सवाल में यह स्पष्ट नहीं है। तो दो सूचियां एक ही छात्र को इंगित कर सकती हैं, लेकिन अलग-अलग सूचियां हो सकती हैं, या प्रत्येक सूची छात्रों की अपनी प्रतियों के "स्वामित्व" भी हो सकती है। –