मेरे पास डेवलपर की स्थिति के लिए आज एक साक्षात्कार था और मुझे एक दिलचस्प तकनीकी सवाल पूछा गया कि मुझे इसका जवाब नहीं पता था। मैं यह देखने के लिए यहां पूछूंगा कि कोई मुझे मेरी जिज्ञासा के लिए समाधान प्रदान कर सकता है या नहीं। यह एक बहु-पक्ष प्रश्न है:किसी लिंक्ड सूची में भ्रष्टाचार ढूँढना
1) आपको 100 तत्वों (पूर्णांक और अगले नोड के लिए एक सूचक) के साथ एकमात्र लिंक की गई सूची दी गई है, यह पता लगाने का एक तरीका ढूंढें कि क्या लिंक के माध्यम से ब्रेक या भ्रष्टाचार आधा है सूची? आप लिंक की गई सूची के साथ कुछ भी कर सकते हैं। ध्यान दें कि आपको इसे सूची में करना चाहिए क्योंकि यह पुनरावृत्त है और यह सत्यापित करने से पहले यह सत्यापन है कि सूची में इसके साथ कोई समस्या है।
मान लीजिए कि लिंक्ड सूची में ब्रेक 50 वें तत्व पर है, पूर्णांक या यहां तक कि पॉइंटर अगले नोड (51 वें तत्व) पर एक कचरा मूल्य को इंगित कर सकता है जो आवश्यक रूप से एक अमान्य पता नहीं है।
2) ध्यान दें कि यदि लिंक की गई सूची में भ्रष्टाचार है, तो आप डेटा हानि को कम कैसे करेंगे?
"जो अनिवार्य रूप से एक अमान्य पता नहीं है" सी # के असुरक्षित कीवर्ड या कुछ देशी इंटरऑप (पी/Invoke, जेएनआई) को छोड़कर, आपके पास सी # या जावा में किसी अमान्य पते के लिए सूचक कैसे होगा? –
आपको पहले "दूषित" को परिभाषित करना होगा। – SimpleVar
क्या यह सी # और जावा के साथ टैग करना वाकई सही है? उनके पास कोई पॉइंटर्स नहीं है (जब तक असुरक्षित सी # कोड नहीं लिखता) और कोई संदर्भ किसी अमान्य पते पर इंगित नहीं कर सकता है। प्रश्न सी या सी ++ में अधिक समझ में आता है। –