描述
该题来自于力扣第95题
分析
关于树的问题,基本上可以靠递归解决,即大问题转换为小问题。比如用1 2 3 4 5构建二叉搜索树,由于是搜索树,左子树结点都小于根结点,右子树结点都大于根结点,比如选3为根结点,则用1 2构建二叉搜索树作为左子树,4 5构建的二叉树作为右子树,这就是相似的“小问题”了。
所以使用递归,遍历所有结点作为根结点,然后左边的数用来构建左子树,右边的数用来构建右子树,所有可能的左子树与右子树结合即可。
代码
1 | class Solution: |
该题来自于力扣第95题
关于树的问题,基本上可以靠递归解决,即大问题转换为小问题。比如用1 2 3 4 5构建二叉搜索树,由于是搜索树,左子树结点都小于根结点,右子树结点都大于根结点,比如选3为根结点,则用1 2构建二叉搜索树作为左子树,4 5构建的二叉树作为右子树,这就是相似的“小问题”了。
所以使用递归,遍历所有结点作为根结点,然后左边的数用来构建左子树,右边的数用来构建右子树,所有可能的左子树与右子树结合即可。
1 | class Solution: |