我不想让别人为我做任务。我对提案的递归部分的要求不太确定。
这是一个递归函数,用于打开目录并打开计算机的文件:
for each
为什么指令的递归部分中有两个{{1}}语句?
答案 0 :(得分:0)
okies,
首先,这不应该是StackOverflow,因为它不是一个编程问题,它是一个应该在https://softwareengineering.stackexchange.com/上提出的编程理论问题
我认为你在这里忽略了递归函数/方法的重点。递归函数的重点是它为你做嵌套,所以你不需要将foreach嵌套在另一个foreach中,函数会为你做这个。
这是如何做到的概述,但是,我不会提供代码,因为您已经说过这是一项任务。我不支持抄袭。
PlaceToStore = array of array of dir path (string);
function scanPath(pathToOpen, PlaceToStore){
where dirHandle equals directory reader
where childrenArray = dirHandle->getChilden
foreach child in childrenArray do
if(child is directory) then
scanPath(child->path, PlaceToStore[child->path]
else
placeToStore[child->path] = child->path
end if
endforeach
}
你的每个childData都不需要一个double是另一个目录或文件
现在这个例子是一个简单的方法来快速概述它,但它显示了如何在一个易于理解的例子中完成递归。