[leetcode]105. Construct Binary Tree from Preorder and Inorder Traversal
2016-08-29 20:30
423 查看
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */ class Solution { public: TreeNode* buildTree(vector<int>& preorder, vector<int>& inorder) { int len=preorder.size(); if(len==0) return {}; else return build(preorder,inorder,0,len-1,0,len-1); } TreeNode* build(vector<int>& preorder, vector<int>& inorder,int preL,int preR,int inL,int inR) { if(preR<preL||inR<inL) return {}; TreeNode* root=new TreeNode(preorder[preL]); if(preR==preL||inR==inL) return root; int mid; for(int i=inL;i<=inR;i++) { if(inorder[i]==preorder[preL]) { mid=i; break; } } root->left=build(preorder,inorder,preL+1,preL+mid-inL,inL,mid-1); root->right=build(preorder,inorder,preL+1+mid-inL,preR,mid+1,inR); return root; } };
相关文章推荐
- [Leetcode]@python 105. Construct Binary Tree from Preorder and Inorder Traversal
- Leetcode 105. Construct Binary Tree from Preorder and Inorder Traversal
- LeetCode - 105. Construct Binary Tree from Preorder and Inorder Traversal
- 【LeetCode】105. Construct Binary Tree from Preorder and Inorder Traversal
- 【leetcode】105. Construct Binary Tree from Preorder and Inorder Traversal
- Leetcode 105. Construct Binary Tree from Preorder and Inorder Traversal
- [LeetCode]problem 105. Construct Binary Tree from Preorder and Inorder Traversal
- LeetCode-105.Construct Binary Tree from Preorder and Inorder Traversal
- LeetCode 105. Construct Binary Tree from Preorder and Inorder Traversal
- leetcode 105. Construct Binary Tree from Preorder and Inorder Traversal
- LeetCode *** 105. Construct Binary Tree from Preorder and Inorder Traversal
- [leetcode] 105.Construct Binary Tree from Preorder and Inorder Traversal
- [leetcode] 105. Construct Binary Tree from Preorder and Inorder Traversal 解题报告
- 105. Construct Binary Tree from Preorder and Inorder Traversal LeetCode
- 剑指offer 面试题6:重建二叉树(Leetcode105. Construct Binary Tree from Preorder and Inorder Traversal) 解题报告
- leetcode-java-105. Construct Binary Tree from Preorder and Inorder Traversal
- [Leetcode] 105. Construct Binary Tree from Preorder and Inorder Traversal
- leetCode 105.Construct Binary Tree from Preorder and Inorder Traversal (根据前序遍历和中序遍历构造二叉树)
- LeetCode --- 105. Construct Binary Tree from Preorder and Inorder Traversal
- [leetcode] 105. Construct Binary Tree from Preorder and Inorder Traversal