Algorithms—105.Construct Binary Tree from Preorder and Inorder Traversal
2015-07-16 13:00
621 查看
思路:根据前序先找出节点,然后去中序找出左右,依次递归。
耗时:360ms,中游
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */ public class Solution { public TreeNode buildTree(int[] preorder, int[] inorder) { return build(preorder, inorder,0,preorder.length-1,0,inorder.length-1); } public TreeNode build(int[] preorder, int[] inorder,int ps,int pe,int is,int ie){ if(ps>pe){ return null; } int val=preorder[ps]; TreeNode node=new TreeNode(val); int i = is; for (; i <=ie; i++) { if (inorder[i]==val) { break; } } int rang=i-is; node.left=build(preorder, inorder,ps+1,ps+rang,is,i-1); node.right=build(preorder,inorder,ps+rang+1,pe,i+1,ie); return node; } }
耗时:360ms,中游
相关文章推荐
- 开机logo切换逻辑深入研究
- 开机logo切换逻辑深入研究
- Algorithms—107.Binary Tree Level Order Traversal II
- Algorithms—104.Maximum Depth of Binary Tree
- Algorithms—111.Minimum Depth of Binary Tree
- Django中使用locals()函数的技巧
- Django框架中render_to_response()函数的使用方法
- Django框架下在视图中使用模版的方法
- 详解Django中的过滤器
- trac 更新 logo
- Google 的算法出过哪些囧事?
- GO语言为结构体排序
- 详解Django中的过滤器
- Django框架下在视图中使用模版的方法
- Django框架中render_to_response()函数的使用方法
- Django中使用locals()函数的技巧
- Django中模版的子目录与include标签的使用方法
- VIEWGOOD(远古)流媒体发布平台在普教行业的应用
- VIEWGOOD(远古)信息发布系统应用于大型企业
- Django auth 登陆后页面跳转至/account/profile,修改跳转至其他页面