Construct Binary Tree from Inorder and Postorder Traversal

Total Accepted: 31041 Total Submissions: 115870

 
 

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

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

解题思路:

修改下上题代码解决,JAVA实现如下:

	static public TreeNode buildTree(int[] inorder, int[] postorder) {
return buildTree(postorder, inorder, 0, postorder.length-1, 0, inorder.length-1);
}
static public TreeNode buildTree(int[] postorder, int[] inorder, int pBegin, int pEnd, int iBegin, int iEnd){
if(pBegin>pEnd)
return null;
TreeNode root = new TreeNode(postorder[pEnd]);
int i = iBegin;
for(;i<iEnd;i++)
if(inorder[i]==root.val)
break;
int lenLeft = i-iBegin;
root.left = buildTree(postorder, inorder, pBegin, pBegin+lenLeft-1, iBegin, i-1);
root.right = buildTree(postorder, inorder, pBegin+lenLeft, pEnd-1, i+1, iEnd);
return root;
}

最新文章

  1. 为支持ASP.NET5跨平台,Jexus再添新举措
  2. 高仿中国银行ATM系统
  3. WPF中的Invoke
  4. 浅谈python的import
  5. Android app主线程UI更新间歇性崩溃的问题
  6. WBS练习
  7. SIT和UAT的区别
  8. JSP_EL使用
  9. &lt;译&gt;Selenium Python Bindings 2 - Getting Started
  10. qrcode-php生成二维码
  11. 安装新的int 9中断例程2
  12. mysql 使用注意
  13. Spark Graphx
  14. 【知了堂学习笔记】java 自定义异常
  15. SHOI2016方
  16. bash shell seq的用法
  17. PHP mysql经典问题,防止库存把控不足问题
  18. vue.js学习 自定义过滤器使用(2)
  19. [14] 齿轮(Gear Wheel)图形的生成算法
  20. Markdown 格式如何转换成 Word?

热门文章

  1. Error Code: 1055 incompatible with sql_mode=only_full_group_by
  2. python 制作wordcloud词云
  3. Node.js学习入门手册
  4. js 简单getByClass得封装
  5. 环信ONE SDK架构介绍
  6. iOS 依据文本内容为TextView动态定义高度
  7. iOS常用的加密方式
  8. 编译-O 选项对性能提升作用
  9. TPM:dTPM(硬件)和fTPM(固件模拟的软件模块)
  10. spring-web中的StringHttpMessageConverter简介