return 语句是否会阻止递归堆栈继续?

Does a return statement stop the recursive stack from continuing?

我正在为二叉搜索树编写 search_key 算法,但遇到了问题。我正在遍历二叉搜索树并使用基本递归技术使用中序遍历算法比较节点。但是,当条件命中 (search_key == node[x]->value) 并且我 return 节点时,即使在我 return 之后它似乎仍在继续执行代码节点,它会影响最终的输出。即使达到 return 值,递归堆栈是否继续?有办法解决这个问题吗?

return 将从当前函数 return,当然,在递归情况下,您 return 到的位置是下面的级别,因此您可能需要检查结果并决定做什么,而不是继续搜索树的另一边,例如。

您应该 post 您正在谈论的代码片段。

除此之外,如果您已调用递归函数给定次数,从该函数 returning 将 return 您返回到该函数的上一次调用。 return 语句不会停止所有先前执行的递归调用。