ट्रैक
/
C++
C++
/
अभ्यास
/
सरल लिंक्ड लिस्ट
सरल लिंक्ड लिस्ट

सरल लिंक्ड लिस्ट

मध्यम

परिचय

आप एक संगीत स्ट्रीमिंग कंपनी के लिए काम करते हैं।

आपको अपने संगीत प्लेयर एप्लिकेशन के लिए एक प्लेलिस्ट फीचर बनाने का काम सौंपा गया है।

निर्देश

म्यूज़िक प्लेयर एप्लिकेशन का एक प्रोटोटाइप लिखिए।

प्रोटोटाइप के लिए, हर गाने को बस एक संख्या से दर्शाया जाएगा। संख्याओं की एक रेंज (यानी गानों की आईडी) दी गई हो, तो एक सिंगली लिंक्ड लिस्ट बनाइए।

एक सिंगली लिंक्ड लिस्ट दी गई हो, तो आपको उस लिस्ट को उलटकर गाने उल्टे क्रम में चला पाना चाहिए।

Note

लिंक्ड लिस्ट कंप्यूटर विज्ञान में एक बुनियादी डेटा स्ट्रक्चर है, जिसका उपयोग अक्सर दूसरे डेटा स्ट्रक्चर बनाने में किया जाता है।

सबसे सरल तरह की लिंक्ड लिस्ट सिंगली लिंक्ड लिस्ट होती है। इसका मतलब है कि हर एलिमेंट (या "नोड") में डेटा होता है, और साथ में वह चीज़ भी होती है जो लिस्ट के अगले नोड की ओर इशारा करती है।

अगर आप लिंक्ड लिस्ट के बारे में और गहराई में जाना चाहते हैं, तो यह लेख देखिए, जिसमें अच्छे चित्रों की मदद से इसे समझाया गया है।

कार्यान्वयन के संकेत

हमने आपके लिए List क्लास की सामान्य संरचना पहले से तैयार कर दी है। इसमें दो प्राइवेट वेरिएबल हैं: Element* टाइप का head और size_t टाइप का current_size। इन दोनों को आप अपने कोड में इस्तेमाल कर सकते हैं।

Element स्ट्रक्चर भी दिया गया है। इसमें दो वेरिएबल हैं: int टाइप का data और Element* टाइप का next।

इसकी पूरी जानकारी आप simple_linked_list.h में देख सकते हैं। उस फाइल को बदलना ज़रूरी नहीं है, लेकिन अगर वह आपकी ज़रूरत के अनुसार ठीक लगे तो आप उसे बदल सकते हैं।

टेस्ट इन फंक्शनों का ठीक उसी रूप में इस्तेमाल करते हैं जैसे वे simple_linked_list.cpp में दिए गए हैं, इसलिए इनका सिग्नेचर न बदलिए। अगर चाहें तो आप और फंक्शन तथा मेंबर जोड़ सकते हैं।

क्या स्मार्ट पॉइंटर इस्तेमाल कर सकते हैं?

हालाँकि हेडर फाइल में रॉ पॉइंटर दिए गए हैं, फिर भी आप चाहें तो कोई अलग कार्यान्वयन चुन सकते हैं।

GitHub के ज़रिए संपादित करें यह लिंक एक नई विंडो या टैब में खुलता है
C++ Exercism

सरल लिंक्ड लिस्ट शुरू करने के लिए तैयार हैं?

Exercism पर साइन अप कीजिए और C++ को 19 कॉन्सेप्ट100 अभ्यास तथा असली इंसानों से मिलने वाली मेंटरिंग के साथ सीखिए और उसमें महारत हासिल कीजिए, वह भी बिल्कुल मुफ्त।