AI कोडिंग इंटरव्यू सवाल: उदाहरण और अभ्यास
द्वारा Aaron Cao · अपडेट

ऐरे, हैश मैप, ट्री, ग्राफ, डायनेमिक प्रोग्रामिंग और डीबगिंग से जुड़े सवालों की तैयारी करें। अभ्यास के दौरान AI संकेत सुझा सकता है, परीक्षण मामले दे सकता है और आपके स्पष्टीकरण की समीक्षा कर सकता है। फिर भी आपको शुद्धता और जटिलता स्वयं सत्यापित करनी होगी। लाइव सहायता का उपयोग तभी करें जब इंटरव्यू के नियम इसकी अनुमति दें।
सबसे पहले किन कोडिंग इंटरव्यू सवालों का अभ्यास करना चाहिए?
एल्गोरिदम के नाम जानने के बाद भी आप किसी नई समस्या को हल करने की शुरुआत को लेकर अनिश्चित हो सकते हैं। ये अभ्यास प्रश्न ठोस इनपुट को समाधान के चुनाव, जटिलता सीमाओं और उन विशेष मामलों से जोड़ते हैं जिन्हें आपको बोलकर समझाना चाहिए।
- Two Sum: ऐसे दो अलग इंडेक्स लौटाएँ जिनके मानों का योग लक्ष्य के बराबर हो। [3, 3] और लक्ष्य 6 के लिए उत्तर दोनों स्थानों का उपयोग करता है। पहले देखे गए मानों के हैश मैप के साथ स्कैन करें और मौजूदा मान संग्रहीत करने से पहले उसका पूरक जाँचें। इससे एक ही इंडेक्स का दोबारा उपयोग नहीं होता। अपेक्षित समय O(n) और अतिरिक्त स्थान O(n) है। स्पष्ट करें कि कोई जोड़ी न मिलने पर क्या लौटाना है।
- दोहराए गए वर्णों के बिना सबसे लंबी सबस्ट्रिंग खोजें। 'abba' के लिए लंबाई 2 है। हर वर्ण की अंतिम स्थिति ट्रैक करें और बिना डुप्लिकेट वाली विंडो बनाए रखें। यदि कोई पुरानी उपस्थिति मौजूदा विंडो के बाहर है, तो बाईं सीमा को कभी पीछे नहीं जाना चाहिए। हैश-मैप लुकअप के साथ अपेक्षित समय O(n) है। स्पष्ट करें कि किसे एक वर्ण माना जाएगा।
- ओवरलैप करने वाले बंद अंतरालों को मिलाएँ। [1, 3], [3, 5] और [8, 10] के लिए [1, 5] और [8, 10] लौटाएँ। आरंभ के अनुसार सॉर्ट करें, फिर मौजूदा अंतराल बढ़ाएँ या नया अंतराल शुरू करें। सॉर्टिंग में O(n log n) समय लगता है। समान अंतिम बिंदु वाले बंद अंतराल ओवरलैप करते हैं; पूछें कि क्या यह समस्या की परिभाषा से मेल खाता है।
- बिना चक्र वाली सिंगली लिंक्ड लिस्ट को उलटें। मौजूदा नोड का नेक्स्ट पॉइंटर बदलने से पहले अगला नोड सहेजें। पुनरावृत्त समाधान में O(n) समय और O(1) अतिरिक्त स्थान लगता है। खाली सूची, एक नोड और दो नोड के मामलों को चरणबद्ध जाँचें। बताएँ कि हर पुनरावृत्ति के बाद सूची का कौन-सा भाग पहले ही उलट चुका है।
- बाइनरी ट्री के मान स्तर-दर-स्तर लौटाएँ। अगले स्तर पर जाने से पहले क्यू का उपयोग करके मौजूदा स्तर के नोडों की संख्या के बराबर नोड प्रोसेस करें। समय O(n) है; लौटाए गए आउटपुट को छोड़कर सहायक क्यू स्थान O(w) है, जहाँ w अधिकतम स्तर-चौड़ाई है। खाली ट्री और हर स्तर पर केवल एक चाइल्ड वाले ट्री का परीक्षण करें।
- पूर्वापेक्षाओं के आधार पर तय करें कि क्या हर कोर्स पूरा किया जा सकता है। पूर्वापेक्षाओं को निर्देशित ग्राफ के रूप में मॉडल करें और टोपोलॉजिकल सॉर्टिंग का उपयोग करें। यदि V से कम वर्टेक्स प्रोसेस होते हैं, तो निर्देशित चक्र बचा रहता है। समय O(V + E) है। अलग-अलग घटकों, एक अलग-थलग कोर्स और स्वयं पर निर्भरता का परीक्षण करें।
- किसी राशि तक पहुँचने के लिए आवश्यक न्यूनतम सिक्के खोजें। मान लें कि धनात्मक पूर्णांक मूल्यवर्ग वाले सिक्कों की असीमित संख्या उपलब्ध है। [1, 3, 4] और राशि 6 के लिए पहले सबसे बड़ा सिक्का चुनने पर तीन सिक्के लगते हैं; 3 + 3 में दो लगते हैं। डायनेमिक प्रोग्रामिंग स्टेट को प्रत्येक राशि के लिए न्यूनतम सिक्कों के रूप में परिभाषित करें और शून्य राशि के लिए शून्य सिक्कों से शुरू करें। लक्ष्य A और c मूल्यवर्ग होने पर मानक तरीके में O(Ac) समय और O(A) स्थान लगता है। जिन राशियों तक पहुँचना संभव न हो, उन्हें स्पष्ट रूप से संभालें।
भूमिका और विषय के अनुसार व्यवस्थित संबंधित अभ्यास के लिए इंटरव्यू प्रश्न लाइब्रेरी देखें।
अच्छी तरह समझाया गया समाधान कैसा होता है?
इस प्रश्न पर विचार करें: ऋणात्मक मानों की अनुमति देते हुए उन गैर-रिक्त सन्निहित सबऐरे की गिनती करें जिनका योग लक्ष्य के बराबर है। [1, -1, 1] और लक्ष्य 1 के लिए उत्तर 3 है: किसी भी एक-तत्व वाले [1] सबऐरे या पूरे ऐरे को चुना जा सकता है।
आधारभूत तरीके से शुरू करें: हर आरंभिक स्थान चुनें और रनिंग सम बनाए रखते हुए अंतिम स्थान आगे बढ़ाएँ। इसमें O(n²) समय और O(1) अतिरिक्त स्थान लगता है। यहाँ सामान्य सिकुड़ती-विंडो तरीका भरोसेमंद नहीं है, क्योंकि ऋणात्मक मान उस धारणा को तोड़ देते हैं कि विंडो बढ़ाने से उसका योग बढ़ता है।
तेज तरीका प्रीफिक्स सम और फ़्रीक्वेंसी मैप का उपयोग करता है। यदि मौजूदा प्रीफिक्स सम s है, तो s - target के बराबर हर पिछला प्रीफिक्स आवश्यक योग वाला एक सबऐरे दर्शाता है। मैप को प्रीफिक्स सम शून्य की एक उपस्थिति के साथ आरंभ करें, जो ऐरे शुरू होने से पहले के खाली प्रीफिक्स को दर्शाती है।
- प्रोसेसिंग क्रम: मौजूदा मान को प्रीफिक्स सम में जोड़ें, मेल खाने वाले पिछले प्रीफिक्स गिनें और फिर मौजूदा प्रीफिक्स दर्ज करें। इसे पहले दर्ज करने से लक्ष्य शून्य होने पर खाली सबऐरे गलत तरीके से गिना जाएगा।
- इनवेरिएंट: मौजूदा प्रीफिक्स दर्ज करने से पहले मैप में मौजूदा स्थान से पहले समाप्त होने वाले सभी प्रीफिक्स की आवृत्तियाँ होती हैं।
- जटिलता: हर तत्व पर मैप की नियत संख्या में क्रियाएँ होती हैं। हैश क्रियाओं का अपेक्षित समय नियत मानते हुए अपेक्षित समय O(n) और अतिरिक्त स्थान O(n) है।
- जाँच: खाली ऐरे 0 लौटाता है। [0, 0] और लक्ष्य 0 के लिए 3 लौटाएँ। निश्चित-चौड़ाई वाले पूर्णांक प्रकारों में संचयी योग और उत्तर की गिनती, दोनों में ओवरफ़्लो पर विचार करें।
एक उपयोगी अनुवर्ती प्रश्न यह है कि कार्य में केवल गिनती चाहिए या वास्तविक सबऐरे। हर मेल खाता सबऐरे लौटाने से आउटपुट लागत बढ़ती है: लक्ष्य शून्य होने पर केवल शून्य मानों वाले ऐरे में n(n + 1)/2 मेल खाते गैर-रिक्त सबऐरे होते हैं।
कोडिंग सवालों के अभ्यास के लिए AI का उपयोग कैसे करें?
मदद माँगने से पहले स्वयं प्रयास करें, फिर आगे बढ़ने के लिए आवश्यक सबसे छोटे हस्तक्षेप की माँग करें। निम्नलिखित निर्देश AI के साथ बातचीत को ऐसे अभ्यास में बदलते हैं जिसे आप जाँच सकते हैं।
- एक संकेत माँगें: मुझे इस बारे में एक संकेत दें कि कौन-सी जानकारी संग्रहीत करनी है। अभी कोड न दें और पूरे एल्गोरिदम का नाम न बताएँ।
- तर्क को चुनौती दें: यह मेरा लूप इनवेरिएंट है। ऐसा इनपुट खोजें जिस पर मेरा कार्यान्वयन इसका उल्लंघन करता हो या समझाएँ कि हर अपडेट इसे कैसे बनाए रखता है। उत्तर स्वयं जाँचें; मॉडल की सहमति शुद्धता का प्रमाण नहीं है।
- जटिलता की जाँच करें: इस कार्यान्वयन में स्लाइसिंग, सॉर्टिंग, कंटेनर क्रियाओं और रिकर्सिव कॉल से होने वाले कार्य की गणना करें। किसी परिचित एल्गोरिदम का नाम आपके वास्तविक कोड की जटिलता सिद्ध नहीं करता।
- परीक्षण बनाएँ: खाली इनपुट, डुप्लिकेट, सीमा मानों और असंभव परिणामों के लिए मामले सुझाएँ। हर मामले का अपेक्षित उत्तर समझाएँ। उन्हें टेस्ट ऑरेकल की तरह उपयोग करने से पहले वे उत्तर स्वतंत्र रूप से निकालें।
- एक बाधा बदलें: यदि इनपुट सॉर्ट किया हुआ हो, उसे बदला न जा सकता हो या वह स्ट्रीम के रूप में आए, तो समाधान कैसे बदलेगा? कोड दोबारा लिखने से पहले नए समझौते को समझाएँ।
एक क्लाउड प्रदाता में वरिष्ठ भूमिका की तैयारी कर रही बैकएंड इंजीनियर पर विचार करें। पूर्वापेक्षा-ग्राफ की समस्या हल करने के बाद वह AI अभ्यास साथी से एक ऐसे अलग-अलग घटकों वाले ग्राफ की माँग करती है जिसमें चक्र हो। फिर वह बिना संकेत देखे क्यू को चरणबद्ध जाँचती है और समझाती है कि प्रोसेस किए गए वर्टेक्स की संख्या चक्र को कैसे उजागर करती है।
पूरा समाधान पढ़ने के बाद उसे बंद करें और स्मृति से एल्गोरिदम, इनवेरिएंट और परीक्षण फिर से बनाएँ। कोड दोबारा बना पाना, यह समझाने की क्षमता से कम उपयोगी है कि वह क्यों काम करता है और बदली हुई बाधा के अनुसार उसे कैसे ढाला जाए।
बातचीत में अपना तर्क समझाने का अभ्यास करने के लिए मॉक इंटरव्यू पेज पर जाएँ।
अनुमति वाले लाइव कोडिंग इंटरव्यू में SubcueAI कैसे काम आता है?
SubcueAI लाइव सहायता के दो माध्यम देता है। macOS और Windows के लिए इसका प्रमुख नेटिव ऐप सिस्टम ऑडियो और आपका माइक्रोफ़ोन कैप्चर करता है, जबकि सहायता एक स्थानीय फ्लोटिंग ओवरले में दिखाई जाती है। यह Zoom और Microsoft Teams सहित डेस्कटॉप मीटिंग क्लाइंट के साथ काम करता है।
ब्राउज़र एक्सटेंशन भी Chrome और Edge सहित Chromium ब्राउज़र के Side Panel के माध्यम से लाइव सहायता देता है। यह केवल मीटिंग टैब का ऑडियो कैप्चर करता है और Google Meet जैसी ब्राउज़र-टैब कॉल को कवर करता है। यह उसी टैब से इंटरव्यूअर की आवाज़ सुनता है, आपका माइक्रोफ़ोन कभी कैप्चर नहीं करता और उम्मीदवार की बातों का ट्रांसक्रिप्शन नहीं करता। Firefox बिल्ड केवल मॉक अभ्यास के लिए है।
दोनों में से कोई माध्यम कॉल में मीटिंग बॉट नहीं जोड़ता या मीटिंग पेज में कंटेंट स्क्रिप्ट इंजेक्ट नहीं करता। कोडिंग सवालों के लिए बोले गए और लिखित संदर्भ में अंतर करें: केवल ऑडियो कैप्चर से ऐसा समस्या-विवरण या कोड उपलब्ध नहीं होता जो सिर्फ़ किसी एडिटर में दिख रहा हो। हर सुझाव को सटीक प्रश्न, बाधाओं और कार्यान्वयन के अनुसार जाँचें।
लाइव सहायता का उपयोग करने से पहले इंटरव्यू के नियमों की पुष्टि करें। SubcueAI के हर स्थिति में अदृश्य रहने की गारंटी नहीं है। स्क्रीन शेयरिंग, रिकॉर्डिंग, प्रॉक्टर्ड आकलन और कंपनी-प्रबंधित डिवाइस छिपाव संबंधी आश्वासनों के दायरे से बाहर हैं। शेयर या रिकॉर्ड की गई स्क्रीन ओवरले या Side Panel दिखा सकती है और डिवाइस या प्रॉक्टरिंग नियंत्रण गतिविधि की निगरानी कर सकते हैं।
उपलब्ध माध्यमों की सेटअप जानकारी के लिए SubcueAI ट्यूटोरियल देखें।
सामान्य प्रश्न
क्या AI कोडिंग इंटरव्यू सवाल और मशीन लर्निंग इंटरव्यू सवाल एक ही हैं?
कोडिंग समाधान लिखने से पहले मुझे क्या स्पष्ट करना चाहिए?
क्या मुझे अभ्यास के दौरान AI से पूरा समाधान माँगना चाहिए?
AI से बनाया गया समाधान किसी परीक्षण में विफल हो तो मुझे क्या करना चाहिए?
क्या कोडिंग इंटरव्यू के दौरान SubcueAI दोनों वक्ताओं को सुन सकता है?
संबंधित प्रश्न
- PySpark इंटरव्यू में सबसे ज़्यादा कौन-से सवाल पूछे जाते हैं?
- Meta इंटरव्यू में कौन से कोडिंग प्रश्न पूछता है?
- इंटरव्यू सवालों के अलग-अलग प्रकार क्या हैं?
- क्या कोई AI असिस्टेंट सिस्टम डिज़ाइन इंटरव्यू प्रश्नों में मदद कर सकता है?
- इंटरव्यू में डेवलपर्स से Copilot और AI कोडिंग असिस्टेंट के बारे में कौन से प्रश्न पूछे जाते हैं?
- मुझे Java कोडिंग इंटरव्यू में किन सवालों की उम्मीद करनी चाहिए?