निश्चित रूप से। आधुनिक भाषाओं में कई "सूची" कार्यान्वयन वास्तव में सूचियों से जुड़े होते हैं, कभी-कभी सीधे पहुंच के लिए सरणी या हैश तालिकाओं के साथ संयोजन में (पुनरावृत्ति के विपरीत सूचकांक द्वारा)।
लिंक्ड सूचियां (विशेष रूप से दोगुनी लिंक्ड सूचियों) का उपयोग आमतौर पर "असली दुनिया" डेटा संरचनाओं में किया जाता है।
मुझे यह कहने की हिम्मत होगी कि प्रत्येक आम भाषा में लिंक्ड सूची का एक पूर्व-निर्मित कार्यान्वयन होता है, या तो भाषा आदिम, मूल टेम्पलेट लाइब्रेरी (जैसे सी ++), मूल पुस्तकालय (जैसे जावा) या कुछ तृतीय पक्ष कार्यान्वयन (शायद खुला स्रोत)।
कहा जा रहा है कि, कई बार मैंने जटिल डेटा संरचनाओं के लिए आधारभूत संरचना कोड बनाते समय खुद को खरोंच से एक लिंक किए गए सूची कार्यान्वयन को लिखा था। कभी-कभी कार्यान्वयन पर पूर्ण नियंत्रण रखना एक अच्छा विचार है, और कभी-कभी आपको अपनी विशिष्ट आवश्यकता को पूरा करने के लिए क्लासिक कार्यान्वयन के लिए "मोड़" जोड़ना होगा। जब तक आप विकल्पों और व्यापार-बंदों को समझते हैं, तब तक आपके स्वयं के कार्यान्वयन को कोड करने के लिए कोई सही या गलत नहीं है। ज्यादातर मामलों में, और निश्चित रूप से सी # जैसे बहुत आधुनिक भाषाओं में मैं इससे बचूंगा।
एक और बिंदु यह है कि जब आपको सरणी/वेक्टर या हैश टेबल बनाम सूचियों का उपयोग करना चाहिए। आपके प्रश्न से मैं समझता हूं कि आप यहां व्यापार-बंदों से अवगत हैं, इसलिए मैं इसमें बहुत अधिक नहीं जाऊंगा, लेकिन मूल रूप से, यदि आपका मुख्य उपयोग क्रमशः सूचियों को सूचीबद्ध करता है, और सूची का आकार महत्वपूर्ण रूप से भिन्न हो सकता है, तो एक सूची हो सकती है एक व्यवहार्य विकल्प हो। एक और विचार सम्मिलन का प्रकार है। यदि एक सामान्य उपयोग केस "मध्य में डालने" है, तो सूचियों के मुकाबले सरणी/वैक्टरों पर महत्वपूर्ण लाभ होता है।मैं जा सकता हूं लेकिन यह जानकारी क्लासिक सीएस किताबों में है :)
स्पष्टीकरण: मेरा उत्तर भाषा अज्ञेयवादी है और विशेष रूप से जेनेरिक से संबंधित नहीं है जो मेरी समझ में एक लिंक्ड सूची कार्यान्वयन है।
स्रोत
2009-06-22 14:29:21
सूची एक सरणी के रूप में लागू किया गया है। यह गतिशील रूप से आवश्यकतानुसार आकार बदलता है (प्रत्येक बार लंबाई में दोगुना)। –
DancesWithBamboo
सूची शायद एक लिंक्ड सूची के रूप में लागू नहीं किया गया है। यह निश्चित रूप से एक सरणी के रूप में लागू किया गया है, क्योंकि फ्रंट पेज (http://msdn.microsoft.com/en-us/library/6sh2ey19.aspx) कहता है। इसके अलावा, आपको डेटा संरचनाओं के बारे में चिंता करने की आवश्यकता नहीं है, लेकिन अन्य व्यवसाय प्रोग्रामर करते हैं। और ... शायद आपको भी होना चाहिए। –
हाँ, आपको शायद ईमानदार होने के बारे में परवाह करना होगा। – mquander