leetCode_根据前序、中序建树以及根据中序、后序建树
来源:互联网 发布:网红雪梨淘宝店 编辑:程序博客网 时间:2024/06/06 00:22
1、根据前序、中序建树
TreeNode * build(vector<int>& preorder,int pleft,int pright,vector<int>& inorder,int ileft,int iright) { if(pleft>pright || ileft>iright) return NULL; int i,j,k; for(i=ileft;i<=iright;i++) if(preorder[pleft]==inorder[i]) break; TreeNode * node=new TreeNode(preorder[pleft]); int size=i-ileft; node->left=build(preorder,pleft+1,pleft+size,inorder,ileft,i-1); node->right=build(preorder,pleft+size+1,pright,inorder,i+1,iright); return node; } TreeNode* buildTree(vector<int>& preorder, vector<int>& inorder) { return build(preorder,0,preorder.size()-1,inorder,0,inorder.size()-1); }
2、根据中序、后序建树
TreeNode * build(vector<int>& inorder,int ileft,int iright,vector<int>& postorder,int pleft,int pright) { if(pleft>pright || ileft>iright) return NULL; int i,j,k; for(i=ileft;i<=iright;i++) if(postorder[pright]==inorder[i]) break; TreeNode * node=new TreeNode(postorder[pright]); int size=i-ileft; node->left=build(inorder,ileft,i-1,postorder,pleft,pleft+size-1); node->right=build(inorder,i+1,iright,postorder,pleft+size,pright-1); return node; } TreeNode* buildTree(vector<int>& inorder, vector<int>& postorder) { return build(inorder,0,inorder.size()-1,postorder,0,postorder.size()-1); }
0 0
- leetCode_根据前序、中序建树以及根据中序、后序建树
- 根据后序和中序建树
- 根据二叉树的前序和中序建树
- Tree-----重建树(根据中序和前序,中序和后序)
- 模板-根据中序,后序建树层次遍历输出
- 【LeetCode】根据前序和中序遍历建树 && 根据中序遍历和后续遍历建树
- 根据前序与中序遍历建树后以后序遍历输出
- 根据中序、前序(后序)输出树的后序(前序),不重建树
- 二叉树 根据前序遍历和中序遍历 或者 后序遍历和中序遍历建树
- UVa 548 Tree 根据后序遍历和中序遍历建树后DFS
- 前序和中序建树,后序和中序建树
- 根据后序与中序遍历建树层序遍历输出
- 二叉树——根据先序(后序)和中序遍历建树
- 建树、前序、中序、后序遍历Java版
- leetcode 105【前序,中序建树】
- 前序——中序建树
- EOJ1811 根据层号表示建树并后序遍历
- leetcode 106 【中序,后序建树】
- ORACLE告警日志文件
- 打断线(Split polyline at a vertic point)
- Nginx之(正)反向代理
- cocos2dx android SDK接入总结
- Java基础之图形用户界面的设计
- leetCode_根据前序、中序建树以及根据中序、后序建树
- java基础--jsp/servlet
- 动态规划-最大连续乘积子数组
- 使用JAXP进行DOM解析
- Rundeck任务自动化发布系统部署与配置
- 工具类:AppUtil
- C/C++开发者必不可少的15款编译器+IDE
- WampSever 3 修改网站根目录
- View控件的显示和隐藏效果