博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
106. Construct Binary Tree from Inorder and Postorder Traversal(js)
阅读量:5308 次
发布时间:2019-06-14

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

106. Construct Binary Tree from Inorder and Postorder Traversal

Given inorder and postorder traversal of a tree, construct the binary tree.

Note:

You may assume that duplicates do not exist in the tree.

For example, given

inorder = [9,3,15,20,7]postorder = [9,15,7,20,3]

Return the following binary tree:

3   / \  9  20    /  \   15   7 题意:通过中序遍历和后序遍历构建二叉搜索树 代码如下:
/** * Definition for a binary tree node. * function TreeNode(val) { *     this.val = val; *     this.left = this.right = null; * } *//** * @param {number[]} inorder * @param {number[]} postorder * @return {TreeNode} */var buildTree = function(inorder, postorder) {            return backtrack(inorder,0,inorder.length-1,postorder,0,postorder.length-1);    }var backtrack = function( inorder,  inStart,inEnd , postorder, postStart, postEnd){       if(inStart>inEnd || postStart>postEnd){           return null;       }      let root = new TreeNode(postorder[postEnd]);        let inIndex=0;        for(let i=inStart;i<=inEnd;i++){            if(inorder[i]==root.val){                inIndex=i;            }        }        root.left=backtrack(inorder,inStart,inIndex-1,postorder,postStart,postStart+inIndex-inStart-1);        root.right=backtrack(inorder,inIndex+1,inEnd,postorder,postStart+inIndex-inStart,postEnd-1);        return root;    }

 

转载于:https://www.cnblogs.com/xingguozhiming/p/10713140.html

你可能感兴趣的文章
P3376 【模板】网络最大流
查看>>
20180908 2018-2019-2 《密码与安全新技术专题》第7周作业
查看>>
AliCTF 2015-题目解析之代码血案
查看>>
Spring如何解析XML文件——Spring源码之XML初解析
查看>>
单调队列模板浅谈
查看>>
linux命令学习之:chown
查看>>
禁止Centos7系统yum自动下载更新
查看>>
基本类型和包装类
查看>>
人工智能和机器学习 AI&ML howto
查看>>
闭包内的微观世界和js垃圾回收机制
查看>>
正则表达式 匹配中文,英文字母和数字及_的写法!同时控制长度
查看>>
《c和指针》——1
查看>>
Tensorflow学习笔记——张量、图、常量、变量(一)
查看>>
【编程】常见概念的理解 —— inplace、vanity url、vanilla(code/software)、编译、链接、build、(delegate、proxy)...
查看>>
“获取硬盘信息失败,请谨慎操作”的解决方案
查看>>
Python 中的 None 与真假
查看>>
时间戳 日期格式
查看>>
英语学习Start
查看>>
ArcGIS API for js InfoWindow
查看>>
CListCtrl控件
查看>>