题目描述
输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。
思路:
二叉树的遍历是一个典型的递归问题,如果题目没有特殊要求,递归必然是最简单的方法,不要问为什么,记住就好了。首先前序总是读取根节点,我们依照这个将中序分为左右两部分,中序里,在根节点左边的就是左子树的元素,右边的就是右子树的元素。
代码:
根据给定的二叉树前序和中序遍历序列,利用递归方法重建二叉树。前序遍历序列如{1,2,4,7,3,5,6,8},中序遍历序列如{4,7,2,1,5,3,8,6}。思路是找到根节点,然后划分左右子树。"
81776586,7846610,区块链应用中的安全挑战与隐患,"['区块链', '安全问题', '智能合约', '网络资产安全', '开发环境安全']
输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。
思路:
二叉树的遍历是一个典型的递归问题,如果题目没有特殊要求,递归必然是最简单的方法,不要问为什么,记住就好了。首先前序总是读取根节点,我们依照这个将中序分为左右两部分,中序里,在根节点左边的就是左子树的元素,右边的就是右子树的元素。
代码:
530

被折叠的 条评论
为什么被折叠?
&spm=1001.2101.3001.5002&articleId=80885098&d=1&t=3&u=e36d2acb3c1e48a48486f0c3ef19c686)