का उपयोग किए बिना किसी दिए गए फ़ोल्डर में फ़ाइलों और उप फ़ोल्डरों मैं हाल ही में सॉफ्टवेयर डेवलपर के पद के लिए एक प्रतिष्ठित कंपनी के साथ एक साक्षात्कार किया था और इस प्रश्नों में से एक के लिए कहा था:प्रिंट सभी प्रत्यावर्तन/ढेर
"को देखते हुए निम्न विधियों:
List subDirectories(String directoryName){ ... };
List filesInDirectory(String directoryName) { ... };
नाम के रूप में सुझाव देते हैं, पहली विधि इनपुट निर्देशिका ('DirectoryName') और दूसरी विधि में तत्काल उप-निर्देशिका के नामों की एक सूची देता है सभी फाइलों के नामों की सूची लौटाता है इस फ़ोल्डर में
प्रिंट करें फाइल सिस्टम में फाइलें करेंगे। "
मैंने इसके बारे में सोचा और साक्षात्कार को एक सुंदर स्पष्ट पुनरावर्ती समाधान दिया। उसने मुझे बिना रिकर्सन के ऐसा करने के लिए कहा। चूंकि रिकर्सन कॉल स्टैक का उपयोग करता है, मैंने उससे कहा कि मैं इसके बजाय एक सहायक स्टैक का उपयोग करूंगा, जिस बिंदु पर उसने मुझे एक स्टैक का उपयोग न करने के लिए कहा था। दुर्भाग्य से, मैं एक समाधान के साथ आने में सक्षम नहीं था। मैंने पूछा कि इसे बिना रिकर्सन/स्टैक के कैसे किया जा सकता है, लेकिन वह नहीं कहती।
यह कैसे किया जा सकता है?
यह एक चर पर पूर्ण पथ नाम स्टोर करने के लिए अनुमति दी है? – lqs
मुझे यकीन नहीं है .. मैंने साक्षात्कारकर्ता से यह नहीं पूछा था! – user1784540