LeetCode – Refresh – Construct Binary Tree from Inorder and Preorder Traversal
2015-03-19 05:30
323 查看
Only different with preorder and postorder is that the root start from the beginning for preorder.
/** * Definition for binary tree * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */ class Solution { public: TreeNode *getTree(vector<int> &iv, vector<int> &pv, int ist, int ied, int pst, int ped) { if (ist > ied) return NULL; int current = -1, len = 0; for (int i = ist; i <= ied; i++) { if (pv[pst] == iv[i]) { current = i; break; } } len = current - ist; TreeNode *root = new TreeNode(pv[pst]); root->left = getTree(iv, pv, ist, current-1, pst+1, pst+len); root->right = getTree(iv, pv, current+1, ied, pst+len+1, ped); } TreeNode *buildTree(vector<int> &preorder, vector<int> &inorder) { if (inorder.size() == 0 || inorder.size() != preorder.size()) return NULL; return getTree(inorder, preorder, 0, inorder.size()-1, 0, preorder.size()-1); } };
相关文章推荐
- [leetcode刷题系列]Construct Binary Tree from Preorder and Inorder Traversal
- functionclass[LeetCode]Construct Binary Tree from Preorder and Inorder Traversal
- LeetCode - Construct Binary Tree from Preorder and Inorder Traversal
- [LeetCode]Construct Binary Tree from Preorder and Inorder Traversal
- Leetcode: Construct Binary Tree from Preorder and Inorder Traversal
- [LeetCode]Construct Binary Tree from Preorder and Inorder Traversal
- LeetCode: Construct Binary Tree from Preorder and Inorder Traversal
- [面试真题] LeetCode:Construct Binary Tree from Preorder and Inorder Traversal
- leetcode - Construct Binary Tree from Preorder and Inorder Traversal
- Construct Binary Tree from Preorder and Inorder Traversal (中序和后序建树,在题目给的函数中完成)【leetcode】
- [Leetcode 78] 105 Construct Binary Tree from Preorder and Inorder Traversal
- LeetCode Construct Binary Tree from Preorder and Inorder Traversal
- [LeetCode] Construct Binary Tree from Preorder and Inorder Traversal, Solution
- LeetCode_Construct Binary Tree from Preorder and Inorder Traversal
- [Leetcode] Construct Binary Tree from Preorder and Inorder Traversal
- [leetcode]Construct Binary Tree from Preorder and Inorder Traversal
- leetcode之Construct Binary Tree from Preorder and Inorder Traversal
- leetcode 109: Construct Binary Tree from Preorder and Inorder Traversal
- [LeetCode] Construct Binary Tree from Preorder and Inorder Traversal
- [LeetCode] Construct Binary Tree from Preorder and Inorder Traversal