Ich hatte vor kurzem ein Interview mit einem seriösen Unternehmen für die Position des Software-Entwickler und dies war eine der Fragen gestellt:Drucken Sie alle Dateien in einem bestimmten Ordner und Unterordner ohne Rekursion/Stack
„Gegeben die folgenden Methoden:
List subDirectories(String directoryName){ ... };
List filesInDirectory(String directoryName) { ... };
Wie die Namen vermuten lassen, die erste Methode eine Liste der Namen der sofortigen Unterverzeichnisse im Eingangsverzeichnis (‚Verzeichnisname‘) und die zweite Methode gibt gibt eine Liste der Namen aller Dateien in diesem Ordner
Drucken a ll die Dateien im Dateisystem. "
Ich dachte darüber nach und gab dem Interview eine ziemlich offensichtliche rekursive Lösung. Sie sagte mir dann, ich solle es ohne Rekursion tun. Da die Rekursion den Call-Stack nutzt, habe ich ihr gesagt, dass ich stattdessen einen Hilfsstapel verwenden werde, an welchem Punkt sie mir sagte, ich solle auch keinen Stack verwenden. Leider war ich nicht in der Lage, eine Lösung zu finden. Ich habe gefragt, wie es ohne Rekursion/Stack gemacht werden kann, aber sie würde es nicht sagen.
Wie kann das gemacht werden?
ist es die vollständigen Pfadnamen auf einer Variablen speichern erlaubt? – lqs
Ich bin mir nicht sicher .. Ich habe das dem Interviewer nicht gefragt! – user1784540