你的程序错就错在return语句上,请记住,递归条件下每一层的return只能返回到上一层,而不能跳出整个递归函数,如果想达到你的目的,你应该在你的递归函数上写道:
findPath(){
if(thisNode != startNode)
{
return findPath(//你的下一层执行结果);
//这样当你的下一层返回false时,整个递归函数将返回
}
}
lz
if(!isDone) {判断的是isDone不是方法的带进来的参数true,所以,方法是肯定要进行的,可能是isDone在方法执行中并没有修改成true,所以依然会跳进方法中
那是不是你的flag判断问题循环继续~像这样的问题一般debug都可以找到!~~你追踪你的判定值咯~
标签:java,递归函数
版权声明:文章由 去回答 整理收集,来源于互联网或者用户投稿,如有侵权,请联系我们,我们会立即处理。如转载请保留本文链接:https://www.quhuida.com/article/220723.html