105. 从前序与中序遍历序列构造二叉树
程序员文章站
2024-01-11 13:41:34
...
一、105. 从前序与中序遍历序列构造二叉树
1.1、题目描述
1.2.1、递归
class Solution:
def buildTree(self, preorder: List[int], inorder: List[int]) -> TreeNode:
if not inorder:
return
# 前序遍历,第一个节点是根节点
root = TreeNode(preorder.pop(0))
# 在中序遍历, 根节点分割左右子树
i = inorder.index(root.val)
root.left = self.buildTree(preorder, inorder[:i])
root.right = self.buildTree(preorder, inorder[i+1:])
return root
上一篇: 平台化测试难度大?京东教你如何用无人测试实现产品质量效率双提升
下一篇: 总结关于单轮注意点
推荐阅读
-
105. 从前序与中序遍历序列构造二叉树
-
leetcode 105.从前序与中序遍历序列构造二叉树
-
leetcode 106. 从中序与后序遍历序列构造二叉树 105. 从前序与中序遍历序列构造二叉树思考分析
-
牛客网---通过前序遍历序列和中序遍历序列建立二叉树
-
树与二叉树 树二叉树前序、中序、后序遍历先根遍历后根遍历
-
从前序与中序遍历序列构造二叉树-二叉树
-
java实现二叉树的前序、中序、后序、层次遍历,递归与非递归
-
LeetCode 105. 从前序与中序遍历序列构造二叉树(各种遍历二叉树的性质,递归建树)
-
LeetCode 106. 从中序与后序遍历序列构造二叉树(二叉树基础之树的重建)
-
二叉树前序、中序、后序、层序遍历的递归与非递归java实现