Open icodeish opened 2 years ago
var buildTree = function(inorder, postorder) {
if (!postorder.length) return null;
const top = postorder.pop();
const root = new TreeNode(top);
const topIndex = inorder.indexOf(top);
root.left = buildTree(inorder.slice(0, topIndex), postorder.slice(0, topIndex));
root.right = buildTree(inorder.slice(topIndex + 1), postorder.slice(topIndex));
return root;
};
https://leetcode-cn.com/problems/construct-binary-tree-from-inorder-and-postorder-traversal/ 给定两个整数数组 inorder 和 postorder ,其中 inorder 是二叉树的中序遍历, postorder 是同一棵树的后序遍历,请你构造并返回这颗 二叉树 。 示例 1: 输入:inorder = [9,3,15,20,7], postorder = [9,15,7,20,3] 输出:[3,9,20,null,null,15,7] 示例 2:
输入:inorder = [-1], postorder = [-1] 输出:[-1]