从前序与中序遍历序列构造二叉树
发布日期:2021-05-04 20:40:31 浏览次数:22 分类:精选文章

本文共 691 字,大约阅读时间需要 2 分钟。

前序遍历

前序遍历首先访问根结点然后遍历左子树,最后遍历右子树。

前序遍历有个特点

  • 节点的分布总是按照根节点 左子树节点 右子树节点 依次排列。

中序遍历

中序遍历首先遍历左子树,再访问根节点,最后遍历右子树。

中序遍历有个特点

  • 根节点的左侧是左子树节点,右侧是右子树节点

依靠前序遍历和中序遍历的特点构建二叉树

leetcode 105

根据一棵树的前序遍历与中序遍历构造二叉树。

注意:

你可以假设树中没有重复的元素。

例如,给出

前序遍历 preorder = [3,9,20,15,7]

中序遍历 inorder = [9,3,15,20,7]
返回如下的二叉树:

3

/ \
9 20
/ \
15 7

/** * Definition for a binary tree node. * public class TreeNode { *     int val; *     TreeNode left; *     TreeNode right; *     TreeNode(int x) { val = x; } * } */class Solution {       public TreeNode buildTree(int[] preorder, int[] inorder) {           if(preorder.length==0 || inorder.length==0) return null;        TreeNode root=new TreeNode(preorder[0]);        for(int i=0;i
上一篇:Spring+SpringMVC+Mybatis 整合入门
下一篇:spring IOC基本配置(xml配置和注解配置)

发表评论

最新留言

留言是一种美德,欢迎回访!
[***.207.175.100]2025年03月28日 16时10分50秒