-1

我尝试使用全局数组来保存值。但是我如何编写递归的基本情况?如果我每次都返回一个数组,如何保持树遍历的正确顺序?

4

1 回答 1

0

不确定您使用的是什么语言,但由于您提到尝试使用全局数组,我假设它允许您附加到数组。这意味着您并不真正关心跟踪每个树值的正确数组索引,只要您以正确的顺序附加到数组即可。类似于以下伪代码的东西将起作用。

postOrderTree: int[] = [];

func createPostOrderTree(TreeNode node) {
  if node is null {
    return;
  }
  createPostOrderTree(node.leftChild);
  createPostOrderTree(node.rightChild);
  postOrderTree.append(node.val);
}
于 2020-01-23T02:09:16.503 回答