每天刷一道牛客题霸-第20天- 重建二叉树

题目

https://www.nowcoder.com/practice/8a19cbe657394eeaac2f6ea9b0f6fcf6?tpId=190&&tqId=35426&rp=1&ru=/ta/job-code-high-rd&qru=/ta/job-code-high-rd/question-ranking

import java.util.*;
/*
*
 * Definition for binary tree
 * public class TreeNode {
 *     int val;
 *     TreeNode left;
 *     TreeNode right;
 *     TreeNode(int x) { val = x; }
 * }
 */
public class Solution {
    public static TreeNode reConstructBinaryTree(int [] pre, int [] in) {
        HashMap<Integer,Integer> inorderMap = new HashMap<>();
        for (int i = 0; i < in.length; i++) {
            inorderMap.put(in[i],i);
        }
        return buildTree(pre,inorderMap,0,pre.length-1,0);
    }
    public static TreeNode buildTree(int[] preorder, HashMap<Integer,Integer> inorderMap,int preStart,int preEnd, int inStart){
        if (preEnd < preStart){
            return null;
        }
        TreeNode root = new TreeNode(preorder[preStart]);
        int rootStart = inorderMap.get(preorder[preStart]);
        int length = rootStart-inStart;
        root.left = buildTree(preorder,inorderMap,preStart+1,preStart+length,inStart);
        root.right = buildTree(preorder,inorderMap,preStart+length+1,preEnd,rootStart+1);
        return root;
    }
}
#题解##牛客题霸#
全部评论
点赞 回复 分享
发布于 2020-12-30 14:25

相关推荐

感觉他们一点都不了解现在这个社会就业有多难,已经在牛客刷到好多篇&nbsp;延毕的帖子了,延毕就会导致已经找好的工作就没了,还得重新再找,学校和老师们是怎么想的呢????看到学生丢失工作会开心吗&nbsp;就业数据都在造假,真实的就业困难不去解决&nbsp;一个个真是好样的
从明天开始狠狠卷JV...:学生看到的是导师不放实习导致offer黄了。 导师看到的是招进来的学生吃自己补助和自己的招生名额,却没给自己升迁带来任何帮助,还要跑路。 根本利益的不一致,最主要留校的导师大概率是职场上招聘失败的,被迫留校的,什么牛鬼蛇神都会有
点赞 评论 收藏
分享
点赞 评论 收藏
分享
05-22 12:44
已编辑
门头沟学院 golang
点赞 评论 收藏
分享
06-27 18:53
门头沟学院 Java
这样才知道自己不适合搞代码,考公去咯
只爱喝白开水:我也发现不适合搞代码,打算转非技术方向了
点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务