Inorder and preorder
题目描述
解题方法
Solution
class Solution(object):
def buildTree(self, preorder, inorder):
"""
:type preorder: List[int]
:type inorder: List[int]
:rtype: TreeNode
"""
if not preorder or not inorder:
return None
ind = inorder.index(preorder.pop(0))
root = TreeNode(inorder[ind])
# 先left后right, 因为是preorder,不断从头部Pop出去的
root.left = self.buildTree(preorder, inorder[0:ind])
root.right = self.buildTree(preorder, inorder[ind+1:])
return root