मुझे लगता है, आपको इन बातों को नहीं समझना चाहिए, क्योंकि वे वास्तव में मौलिक हैं। यह कहा जा रहा है, आपकी समझ में नहीं आ रहा है उन्हें बुरा लग रहा है। आप एक बच्चे से जुड़ी सूची की व्याख्या कर सकते हैं। इसलिए यदि आपका शिक्षक उन्हें आपको समझाने में असफल रहा, तो यह उनकी गलती है। इसलिए आपको चिंता करने में समय नहीं लगाना चाहिए, बल्कि ऐसे लोगों को खोजने की कोशिश करनी चाहिए, जो आपको समझा सकें। अक्सर एक साथी छात्र पूर्णकालिक शैक्षणिक की तुलना में कहीं अधिक बेहतर शिक्षक होता है।
गाड़ियों के बारे में सोचो
कल्पना कीजिए, आपके पास रेलवे की गाड़ियों का एक सेट है, जहां प्रत्येक गाड़ी में पर्याप्त क्षमता है, जिसमें एक टुकड़ा डेटा होता है। प्रत्येक गाड़ी में किसी न किसी प्रकार का हुक होता है, जो दूसरी गाड़ी के मोर्चे से जुड़ा हो सकता है।
यह वास्तव में आपको एक लिंक्ड सूची देता है:
- खाली सूची: गाड़ी जिसमें कोई गाड़ी नहीं है (और इसलिए कोई डेटा नहीं है)
- एक तत्व जोड़ना: ट्रेन के सामने तत्व से युक्त एक नई गाड़ी जोड़ें और इसे बाकी ट्रेन में हुक करें
- एक तत्व को हटाना: गाड़ी को तत्व से खोजें। इसे निकालें (आपको यहां एक क्रेन की आवश्यकता हो सकती है :)), गाड़ी को पहले गाड़ी के साथ हुक दें।
- एक तत्व की जगह: पुराने तत्व युक्त गाड़ी को खोजें। नए तत्व के साथ पुराने तत्व का आदान-प्रदान करें।
- एक तत्व को दूसरे के ठीक बाद में सम्मिलित करना: उस गाड़ी को खोजें जिसमें वह तत्व है जिसके बाद आप सम्मिलित करना चाहते हैं। इसके बाद एक नई गाड़ी डालें, जो तदनुसार झुकी हुई है (हम नहीं चाहते कि ट्रेन अलग हो जाए) और नए तत्व को इसमें डाल दें।
इसके विपरीत, आप एक सरणी को एक दी गई गाड़ी के साथ एक ट्रेन के रूप में सोच सकते हैं, जिसे किसी भी तरह से पुनर्व्यवस्थित नहीं किया जा सकता है। बस आपको उनके भीतर डेटा को बदलना है। यह मॉडल कई समस्याओं के बारे में भी बताता है:
- यदि आप एक तत्व को दूसरे से पहले सम्मिलित करना चाहते हैं, तो आपको निम्नलिखित सभी तत्वों को अगली गाड़ी में ले जाना होगा।
- यदि आप किसी एक तत्व को निकालना चाहते हैं, तो आपको निम्नलिखित सभी तत्वों को एक गाड़ी से आगे ले जाना होगा।
- यदि आपको अधिक गाड़ियों के साथ एक ट्रेन की आवश्यकता है, तो आपको एक नया निर्माण करना होगा, क्योंकि आप बस एक गाड़ी को रोक नहीं सकते हैं। दूसरी ओर, एक सरणी में गाड़ियां ढूंढना बहुत आसान है, क्योंकि आप बस उन्हें स्थायी रूप से संख्या दे सकते हैं (उनका क्रम कभी नहीं बदलेगा)।
स्टैक के लिए: एक "स्टैक" एक डेटा संरचना से कम है, एक विचार से। स्टैक का विचार है, कि यह पुस्तकों के ढेर की तरह काम करता है। आप केवल ढेर के ऊपर किताबें रख सकते हैं और आप कभी भी शीर्ष पुस्तक को ढेर से निकाल सकते हैं (कम से कम अगर किताबें पर्याप्त रूप से भारी हैं)।
कहा जा रहा है कि, एक लिंक की गई सूची को एक स्टैक के रूप में इस्तेमाल किया जा सकता है, यदि आप कैरियर्स में डेटा को पुस्तकों के रूप में सोचते हैं, और स्टैक के शीर्ष के रूप में पहली सबसे अधिक गाड़ी में पुस्तक।
इसलिए मुझे उम्मीद है कि इसने आपकी मदद की। शायद यह नहीं था। शायद आप एक दृश्य प्रकार के अधिक हैं। उस मामले में, मेरा सुझाव है कि आप किसी ऐसे व्यक्ति को खोजें, जो दृश्य स्पष्टीकरण देने में अच्छा हो और उसे आपको समझाए। इसमें लंबा समय नहीं लगेगा, लेकिन यह पूरी तरह से इसके लायक होगा।
अब इससे जूझना ठीक है। लेकिन केवल इसे स्वीकार करना, लंबे समय में एक विकल्प नहीं है।