Construct Binary Tree from Preorder and Inorder Traversal
来源:互联网 发布:帝国cms建站系统 编辑:程序博客网 时间:2024/06/06 00:47
Given preorder and inorder traversal of a tree, construct the binary tree.
Note:
You may assume that duplicates do not exist in the tree.
#include<iostream>#include<vector>#include<map>#include<algorithm>using namespace std;struct TreeNode {int val;TreeNode *left;TreeNode *right;TreeNode(int x) : val(x), left(NULL), right(NULL) {}};TreeNode *CreatNode(vector<int>::iterator pre_begin, vector<int>::iterator pre_end, vector<int>::iterator ino_begin, vector<int>::iterator ino_end){if (pre_begin == pre_end)return NULL;TreeNode* curnode = new TreeNode(*pre_begin);auto iter = find(ino_begin, ino_end, *pre_begin);int lenLeftTree = distance(ino_begin, iter);curnode->left = CreatNode( pre_begin + 1, pre_begin +1+ lenLeftTree, ino_begin, iter);curnode->right = CreatNode( pre_begin + 1+lenLeftTree, pre_end, iter+1,ino_end );return curnode;}TreeNode *buildTree(vector<int> &preorder, vector<int> &inorder) {if (preorder.empty())return NULL;TreeNode* root = new TreeNode(0);root = CreatNode(preorder.begin(), preorder.end(), inorder.begin(), inorder.end());return root;}
0 0
- *(leetcode) Construct Binary Tree from Preorder and Inorder Traversal (tree)
- LeetCode[Tree]: Construct Binary Tree from Preorder and Inorder Traversal
- [leetcode][tree] Construct Binary Tree from Preorder and Inorder Traversal
- Construct Binary Tree from Preorder and Inorder Traversal & Construct Binary Tree from Inorder and P
- LeetCode: Construct Binary Tree from Preorder and Inorder Traversal
- 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 109: 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
- 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
- 如何用命令行删除 Mac os launchpad里的顽固图标
- ListView onTouchEvent onScroll
- Linux下CGI服务器基本工作原理
- android开发之权限问题整理
- Dubbo
- Construct Binary Tree from Preorder and Inorder Traversal
- 树的前序,中序,后序遍历(递归)
- 跨域问题解决方案(HttpClient安全跨域 & jsonp跨域)
- keys
- android:shape属性详解
- iOS学习爬坑记录14:自定义远程推送通知铃声(Custom Alert Sounds)
- Android Camera Api的心得
- Delphi--2~36进制的转换
- Unity 5正式发布