在一次采访中,我被要求在不使用递归、堆栈或队列的情况下列出目录及其子目录中的文件名¹。
由于我知道的唯一非递归方式使用堆栈,因此我无法回答这个问题。
面试官解释了解决方案,但我无法理解。我唯一记得的是它涉及两种方法而不是一种。
这种允许在没有递归、没有堆栈或队列的情况下列出目录及其子目录中的文件的方法是什么?
¹ 解决方案与语言无关。子目录列表由ListDirectories(string directoryPath)
方法提供,文件由ListFiles(string directoryPath)
. 我们事先并不知道子目录的深度。