LeetCode 105. 从前序与中序遍历序列构造二叉树(递归)

题目描述

根据一棵树的前序遍历与中序遍历构造二叉树。
注意:
你可以假设树中没有重复的元素。

在这里插入图片描述

思路

详见链接

代码

#class TreeNode:
#	def __init__(self,x):
#		self.val = x
#		self.left = None
#		self.right = None
class Solution:
	def buildTree(self,preorder,inorder):
		if not preorder:
			return None
		root = TreeNode(preorder[0])
		i = inorder.index(root.val)
		root.left = self.buildTree(preorder[1:i+1],inorder[:i])
		root.right = self.buildTree(preorder[i+1:],inorder[i+1:])
		return root
发布了80 篇原创文章 · 获赞 239 · 访问量 7082

猜你喜欢

转载自blog.csdn.net/weixin_37763870/article/details/104350896