1
5
应该是
另外,一般来说,我个人认为一次只将一个元素发送到递归函数更好。
这样你就不会犯同样的错误。最后是一个小音符。
可以写为
|
2
3
递归调用之间根本没有共享的局部变量,您应该考虑一些其他的设计问题,在foreach循环内部和之后,我看不到任何返回语句,可以发布完整的代码吗? 好的,在调试过程中,你总是会观察我当前方法的值,在递归函数中调试不好,这有点难以理解,你必须在调用堆栈中向下移动你的控件,以便实际观察当前函数的早期调用方的值。 我建议您使用您的节点级别输出跟踪或日志文件,这将帮助您进行实际的调试。 请使用跟踪语句,如下所示。
|
3
1
不共享局部变量。
您看到的(重置为0)是(递归地)被调用函数中i的值
只要看看你的代码,我想可能有个bug
|
4
-1
当您处于调试模式时,您确实会看到为调用重新设置了i,但仍保留为调用方所需的值。例如,堆栈: validtreesfun——这个i=0 validTreesFun——对于这一个,i=x,但是如果不遍历调用堆栈,您将看到0,这是堆栈顶部的良好值。 |
Tor · 使用Box<None>值初始化struct 2 年前 |
Judy · 在两个JavaScript函数中更新全局变量 2 年前 |
ask_me · Python中关于局部和全局范围的概念性问题 2 年前 |
Astha Gupta · 闭包中的词汇作用域是如何发生的?[重复] 2 年前 |
Empha · 从成员函数对对象所做的更改不会持续。范围/参考问题? 6 年前 |
pag-r · Golang开关变量范围 6 年前 |
yurnero · MATLAB:“加载”一个快速访问功能 6 年前 |