105. Construct Binary Tree from Preorder and Inorder Traversal
题目大意
Given two integer arrays preorder and inorder where preorder is the preorder traversal of a binary tree and inorder is the inorder traversal of the same tree, construct and return the binary tree.
中文释义
给定两个整数数组 preorder 和 inorder,其中 preorder 是二叉树的前序遍历,而 inorder 是同一棵树的中序遍历,根据这两个数组构造并返回这棵二叉树。
示例
示例 1:

输入: preorder = [3,9,20,15,7], inorder = [9,3,15,20,7]
输出: [3,9,20,null,null,15,7]
示例 2:
输入: preorder = [-1], inorder = [-1]
输出:[-1]
限制条件
preorder的长度范围为1 <= preorder.length <= 3000。inorder.length==preorder.length。-3000 <= preorder[i], inorder[i] <= 3000。preorder和inorder包含唯一值。inorder中的每个值也出现在preorder中。preorder保证是树的前序遍历。inorder保证是树的中序遍历。
解题思路
方法
该方法通过结合前序遍历和中序遍历的数组,构造出原始的二叉树。
-
存储遍历结果:
- 使用两个向量
pre_order和in_order来存储前序遍历和中序遍历的结果。
- 使用两个向量
-
创建哈希映射:
- 使用一个哈希表

最低0.47元/天 解锁文章
3458

被折叠的 条评论
为什么被折叠?



