当前为游客只读模式。登录后可提交代码判题并保存草稿与进度。

从前序与中序遍历序列构造二叉树

中等buildTree()
时间限制 2000 ms内存限制 128 MB复杂度要求 时间 O(n),空间 O(n)

从前序与中序遍历序列构造二叉树

给定一棵树的前序遍历结果 preorder 与中序遍历结果 inorder,请构造出这棵二叉树并返回其根节点。

约定

  • 树中没有重复节点值。
  • preorder 和 inorder 长度相同,且都能唯一确定一棵树。

输入

  • preorder:前序遍历数组,长度 [0, 3000],节点值 [-3000, 3000]
  • inorder:中序遍历数组,长度与 preorder 相同

输出

构造出的二叉树根节点。

示例一

输入:

preorder = [3, 9, 20, 15, 7]
inorder = [9, 3, 15, 20, 7]

输出:

[3, 9, 20, null, null, 15, 7]

示例二

输入:

preorder = [-1]
inorder = [-1]

输出:

[-1]

复杂度要求

  • 时间 O(n),空间 O(n)。
Loading...

输入

[[3,9,20,15,7],[9,3,15,20,7]]

预期输出

[3,9,20,null,null,15,7]
自定义用例