lintcode- 前序遍历和中序遍历树构造二叉树-73
来源:互联网 发布:军人网络保密准则 编辑:程序博客网 时间:2024/06/05 17:07
/** * Definition of TreeNode: * class TreeNode { * public: * int val; * TreeNode *left, *right; * TreeNode(int val) { * this->val = val; * this->left = this->right = NULL; * } * } */ class Solution {public: TreeNode *buildTree(vector<int> &pre,vector<int> &in,int ps,int pe,int is,int ie){ int record=pre[ps]; TreeNode *root= new TreeNode(record); if(ps==pe) return root; int i; for(i=is;i<=ie;++i) if(in[i]==record) break; if(is<=i-1) root->left =buildTree(pre,in,ps+1,ps+(i-is),is,i-1); if(i+1<=ie) root->right=buildTree(pre,in,ps+(i-is)+1,pe,i+1,ie); return root; } TreeNode *buildTree(vector<int> &preorder, vector<int> &inorder) { if(inorder.empty()&&preorder.empty()) return nullptr; if(inorder.size()!=preorder.size()) return nullptr; return buildTree(preorder,inorder,0,preorder.size()-1,0,inorder.size()-1); }};
0 0
- lintcode- 前序遍历和中序遍历树构造二叉树-73
- LintCode-剑指Offer-(73)前序遍历和中序遍历树构造二叉树
- LintCode 73- 前序遍历和中序遍历树构造二叉树
- LintCode 73 前序遍历和中序遍历树构造二叉树
- Lintcode前序遍历和中序遍历树构造二叉树
- lintcode,前序遍历和中序遍历树构造二叉树
- 前序遍历和中序遍历树构造二叉树-LintCode
- [LintCode]73.前序遍历和中序遍历树构造二叉树
- LintCode 前序遍历和中序遍历树构造二叉树
- LINTCODE——前序遍历和中序遍历树构造二叉树
- lintcode---前序遍历和中序遍历树构造二叉树
- 前序遍历和中序遍历构造二叉树[lintcode]
- [LintCode] 前序遍历和中序遍历树构造二叉树 Construct Binary Tree from Preorder and Inorder Traversal
- 73前序遍历和中序遍历树构造二叉树
- 根据前序和中序遍历构造二叉树
- 根据前序和中序遍历构造二叉树
- 前序和中序遍历构造二叉树
- lintcode-中序遍历和后序遍历树构造二叉树-72
- 黑马程序员---成长之路-----OC之基础篇MRC内存管理
- 归并排序(Merge Sort)
- 关于学习编程
- 【我的问题】没解决的问题
- lintcode-中序遍历和后序遍历树构造二叉树-72
- lintcode- 前序遍历和中序遍历树构造二叉树-73
- 黑马程序员---成长之路-----OC之基础篇ARC和类别
- opencv3.0使用过程中出现“无法定位程序输入点”问题
- 三目表达式的运用
- JAVA设计模式(工厂模式)
- [脑图]模板方法模式(5.10)
- GenyMotion下载安装过程及遇到的问题
- 黑马程序员---成长之路-----OC之基础篇block和typede
- 安卓中通知(Notification)的基本使用方法