【发布时间】:2016-09-21 02:50:28
【问题描述】:
我了解 BST 的顺序遍历的概念,但我对它的递归如何工作感到困惑。我对如何运行 print 语句和以 root.right 作为参数的递归调用感到困惑。我注意到 inOder(root.left) 将继续被调用以搜索 BST 中的最小值,但是当它达到 null 时 if 语句无法访问,因此我们无法跳回正确的节点。我只是想知道我们如何才能到达 if 语句中的代码底线。
public void inOrder(TreeNode root) {
if(root != null) {
inOrder(root.left);
System.out.printf("%d ",root.data);
inOrder(root.right);
}
}
【问题讨论】:
标签: java recursion binary-search-tree