
How I Actually Mastered Data structures and Algorithms (After Wasting 3 Years)
Rajat Garg
Overview
यह वीडियो डेटा स्ट्रक्चर्स और एल्गोरिदम (DSA) में महारत हासिल करने के लिए एक प्रभावी रोडमैप प्रदान करता है, खासकर उन लोगों के लिए जिन्होंने इसे सीखने में बहुत समय बर्बाद किया है। वक्ता अपने 3 साल के संघर्ष को साझा करता है और बताता है कि कैसे गलत दृष्टिकोण के कारण देरी हुई। वीडियो DSA के तीन मुख्य स्तंभों - डेटा स्ट्रक्चर, एल्गोरिदम और समस्या-समाधान पैटर्न - को समझने, उन्हें सही क्रम में सीखने और समस्याओं को हल करने के लिए एक संरचित दृष्टिकोण अपनाने पर जोर देता है। यह संसाधन की अधिकता से बचने, लगातार अभ्यास करने और वास्तविक संघर्ष के माध्यम से सीखने के महत्व पर प्रकाश डालता है।
Save this permanently with flashcards, quizzes, and AI chat
Chapters
- DSA सीखने में 3 साल बर्बाद करने के बाद, वक्ता ने महसूस किया कि समस्या दृष्टिकोण में थी, न कि विषय की कठिनाई में।
- लंबी YouTube ट्यूटोरियल देखना और कई कोर्स में एनरोल करना केवल प्रगति का भ्रम देता है, वास्तविक सीखने का नहीं।
- DSA में महारत हासिल करने का कोई शॉर्टकट नहीं है; यह समय और सही रणनीति लेता है।
- लगातार 2-3 घंटे प्रतिदिन अभ्यास के साथ, 4-5 महीनों में इंटरव्यू के लिए तैयार होना संभव है।
- DSA को एक बड़े विषय के रूप में नहीं, बल्कि तीन अलग-अलग स्तंभों के रूप में देखा जाना चाहिए जो एक-दूसरे पर बनते हैं।
- पहला स्तंभ डेटा स्ट्रक्चर है, जिसे लीनियर (जैसे एरे, लिंक लिस्ट) और नॉन-लीनियर (जैसे ट्री, ग्राफ) में बांटा गया है।
- दूसरा स्तंभ एल्गोरिदम है, जिसमें सॉर्टिंग, सर्चिंग और ग्राफ ट्रैवर्सल जैसी तकनीकें शामिल हैं।
- तीसरा स्तंभ समस्या-समाधान पैटर्न है, जैसे टू पॉइंटर्स, स्लाइडिंग विंडो और डायनामिक प्रोग्रामिंग।
- पहला कदम: DSA समस्याओं को हल करने के लिए पर्याप्त प्रोग्रामिंग भाषा (जैसे Python, Java, C++) सीखें। भाषा की सभी विशेषताओं में महारत हासिल करने की आवश्यकता नहीं है।
- दूसरा कदम: DSA को एक-एक करके सीखें। प्रत्येक विषय के लिए, पहले थ्योरी समझें, फिर 10-12 समस्याएं हल करें।
- विषयों का क्रम महत्वपूर्ण है; जैसे ड्राइविंग सीखने में गियरिंग से पहले बेसिक्स समझना जरूरी है, वैसे ही DSA में भी।
- रिकर्शन जैसे मूलभूत विषयों को समझे बिना ट्री जैसी उन्नत संरचनाओं को समझना मुश्किल है।
- DSA में प्रगति केवल समस्याओं को हल करने की संख्या पर नहीं, बल्कि सीखे गए पैटर्न की संख्या पर निर्भर करती है।
- किसी समस्या को 30-40 मिनट तक हल करने का प्रयास करें, भले ही वह गलत हो, इससे पहले कि आप समाधान देखें।
- समस्या को कागज पर बनाएं, विभिन्न दृष्टिकोणों पर विचार करें, और समाधान को केवल तभी देखें जब आपने वास्तव में संघर्ष किया हो।
- समाधान देखते समय, यह समझने की कोशिश करें कि आपने कौन सा मुख्य विचार छोड़ा था, न कि केवल कोड को कॉपी करें।
- तैयारी को तीन चरणों में विभाजित करें: पहले पूरी प्रश्न शीट हल करें, फिर बुकमार्क की गई समस्याओं पर दोबारा काम करें, और अंत में कंपनी-विशिष्ट समस्याएं हल करें।
- 250-300 गुणवत्तापूर्ण समस्याएं, विभिन्न विषयों और पैटर्न को कवर करते हुए, टॉप कंपनियों को क्रैक करने के लिए पर्याप्त हैं।
- मात्रा से अधिक गुणवत्ता पर ध्यान दें; मीडियम लेवल की समस्याओं पर अधिक ध्यान केंद्रित करें क्योंकि वे सबसे अधिक पूछी जाती हैं।
- कठिन समस्याओं का पीछा करने में बहुत अधिक समय बर्बाद न करें जब तक कि मीडियम समस्याएं अच्छी तरह से न हो जाएं।
- मिथक 1: DSA केवल कुछ खास लोगों के लिए है। यह सच नहीं है; यह समय और निरंतरता लेता है।
- मिथक 2: अधिक संसाधन बेहतर तैयारी की ओर ले जाते हैं। वास्तव में, यह अधिक भ्रम पैदा करता है। एक रोडमैप चुनें और उसका पालन करें।
- मिथक 3: उच्च-भुगतान वाली नौकरियों के लिए DSA की आवश्यकता नहीं है। अधिकांश कंपनियों के शुरुआती राउंड कोडिंग राउंड होते हैं जहां DSA का परीक्षण किया जाता है।
- समाधान देखने से पहले अपने मस्तिष्क को पूरी तरह से संघर्ष करने दें; यही वह जगह है जहाँ वास्तविक सीखना होता है।
Key takeaways
- DSA सीखने के लिए एक संरचित रोडमैप का पालन करना, अव्यवस्थित रूप से कई संसाधनों का उपयोग करने से कहीं अधिक प्रभावी है।
- समस्याओं को हल करने में वास्तविक संघर्ष DSA में महारत हासिल करने की कुंजी है, न कि केवल समाधान देखना।
- DSA के तीन स्तंभों (डेटा स्ट्रक्चर, एल्गोरिदम, समस्या-समाधान पैटर्न) को सही क्रम में सीखना महत्वपूर्ण है।
- प्रोग्रामिंग भाषा की केवल उतनी ही जानकारी प्राप्त करें जितनी DSA समस्याओं को हल करने के लिए आवश्यक हो।
- मात्रा से अधिक गुणवत्ता पर ध्यान केंद्रित करें; 250-300 अच्छी तरह से समझी गई समस्याएं 500 रैंडम समस्याओं से बेहतर हैं।
- लगातार अभ्यास और धैर्य DSA में सफलता के लिए महत्वपूर्ण हैं, भले ही शुरुआत में यह कठिन लगे।
Key terms
Test your understanding
- DSA सीखने में गलत दृष्टिकोण क्या हैं और सही दृष्टिकोण क्या है?
- DSA के तीन मुख्य स्तंभ क्या हैं और वे एक-दूसरे से कैसे संबंधित हैं?
- प्रोग्रामिंग भाषा सीखते समय DSA के लिए किन बातों पर ध्यान देना चाहिए?
- समस्या-समाधान में वास्तविक संघर्ष क्यों महत्वपूर्ण है और इसे कैसे अभ्यास में लाया जाए?
- इंटरव्यू की तैयारी के लिए 250-300 समस्याओं का लक्ष्य क्यों पर्याप्त माना जाता है?