第四课(递归与回溯搜索)中例1(方法1回溯法)中i的层级问题

在3月15号所用的课件中的第14页的算法设计图,在第5次递归返回上一层进行第6次递归,i的值由第5次递归后i=3,到进行第6次递归时输入变成了i=2。请问这里的i为什么会变回i=2?第3次递归后i=2,这里的i和第6次递归使用的i有什么关系?它们和第4,5次递归使用的i又有什么关系?
不会使用上传截图功能,抱歉

林清

赞同来自: fish tofupanda

这个其实你要理解递归,首先第五次递归是我们在第三次递归时候调用了generate(i+1,...),第三次时候i=2,也就是说第五次时候,进入的i=3,所以这个时候我们的i=3,而第六次递归的时候,我们的第六次是从第二次递归时候进行调用generate(i+1,...)的,这个时候第二次的i=1,所以第六次递归时候i=2,他是一个前序遍历的过程,所以其实第五次和第六次没有关联,因为他们没有在同一个父节点下

要回复问题请先登录注册