leetcode-Construct Binary Tree from Inorder and Postorder Traversal
来源:互联网 发布:软件开发人员资质证书 编辑:程序博客网 时间:2024/05/01 14:06
Given inorder and postorder traversal of a tree, construct the binary tree.
Note:
You may assume that duplicates do not exist in the tree.
这道题如果用递归来求解是不难的,只要根据二叉树中序和后续遍历的特点即可,不知道非递归该如何求解?
/** * 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 *buildTree(vector<int> &inorder, vector<int> &postorder) { if (inorder.empty()) return NULL; return buildTree(inorder, 0, inorder.size()-1, postorder, 0, postorder.size()-1); }private: TreeNode *buildTree(vector<int> &inorder, int istart, int iend, vector<int> &postorder, int pstart, int pend) { if (istart == iend) return new TreeNode(inorder[istart]); int i; for (i=istart; i<=iend; ++i) { if (inorder[i]==postorder[pend]) { break; } } TreeNode *root = new TreeNode(inorder[i]); if (i>istart) root->left = buildTree(inorder, istart, i-1, postorder, pstart, pstart+i-istart-1); if (i<iend) root->right = buildTree(inorder, i+1, iend, postorder, pstart+i-istart, pend-1); return root; } };
- *(leetcode) Construct Binary Tree from Inorder and Postorder Traversal (tree)
- LeetCode[Tree]: Construct Binary Tree from Inorder and Postorder Traversal
- LeetCode: Construct Binary Tree from Inorder and Postorder Traversal
- [LeetCode]Construct Binary Tree from Inorder and Postorder Traversal
- LeetCode Construct Binary Tree from Inorder and Postorder Traversal
- LeetCode: Construct Binary Tree from Inorder and Postorder Traversal
- LeetCode: Construct Binary Tree from Inorder and Postorder Traversal
- [LeetCode] Construct Binary Tree from Inorder and Postorder Traversal
- LeetCode Construct Binary Tree from Inorder and Postorder Traversal
- [Leetcode] Construct Binary Tree from Inorder and Postorder Traversal
- leetcode 110: Construct Binary Tree from Inorder and Postorder Traversal
- 【leetcode】Construct Binary Tree from Inorder and Postorder Traversal
- [LeetCode]Construct Binary Tree from Inorder and Postorder Traversal
- [leetcode]Construct Binary Tree from Inorder and Postorder Traversal
- LeetCode-Construct Binary Tree from Inorder and Postorder Traversal
- [leetcode] Construct Binary Tree from Inorder and Postorder Traversal
- LeetCode - Construct Binary Tree from Inorder and Postorder Traversal
- [LeetCode] Construct Binary Tree from Inorder and Postorder Traversal
- 我们的管理:绩效与激励
- 零碎知识
- java面向对象(静态)
- 总是查无此词的词典
- DRP分销系统总结
- leetcode-Construct Binary Tree from Inorder and Postorder Traversal
- 多线程模拟冰淇淋店售货问题
- mvc+exfjs
- ASP.NET 7 && 实验七 && ADO.NET数据库访问技术(二)
- AndroidAnnotations——Injecting Extras注入Extras
- Ubuntu搭建Eclipse+JDK
- Stack的三种含义
- Mybatis.net sqlmap.xml简单配置
- 【javascript】弹出窗口对话框showModalDialog /open