CodeACM
HOT 100 · 二叉树 · LC 105

从前序与中序遍历序列构造二叉树:ACM 模式刷题

按标准输入读取测试数据,输出结果后可在 CodeACM 在线运行和提交。

题目描述

给定两个整数数组 preorder 和 inorder ,其中 preorder 是二叉树的先序遍历, inorder 是同一棵树的中序遍历,请构造二叉树并返回其根节点。

输入格式

第一行输入整数 n。

第二行输入 n 个前序遍历节点值;第三行输入 n 个中序遍历节点值。

输出格式

输出重建后树的层序序列,空位置输出 null,末尾多余的 null 省略。

数据范围

  • 1 ≤ n ≤ 3000
  • −3000 ≤ 节点值 ≤ 3000
  • 两个序列包含相同且互不重复的值

公开样例

样例 1

输入

5
3 9 20 15 7
9 3 15 20 7

输出

3 9 20 null null 15 7

前序首元素 3 是根节点。

样例 2

输入

1
-1
-1

输出

-1

只包含一个节点。

练习建议

先根据输入输出格式写出可运行程序,再用公开样例检查结果;遇到边界情况时,补充自测用例后提交。