106. Construct Binary Tree from Inorder and Postorder Traversal
2016-07-28 15:08
453 查看
Given inorder and postorder traversal of a tree, construct the binary tree.
Note:
You may assume that duplicates do not exist in the tree.
Subscribe to see which companies asked this question
注意要利用指针操作,前面一直用数组传参,内存超出。
Note:
You may assume that duplicates do not exist in the tree.
Subscribe to see which companies asked this question
注意要利用指针操作,前面一直用数组传参,内存超出。
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */ class Solution { public: TreeNode* buildTree(vector<int>& in, vector<int>& post) { int len = in.size(); if(len==0) return NULL; return build(&in[0],&post[0],len); } TreeNode* build(int *in,int *post,int len) { if(len==0) return NULL; int val=post[len-1]; int i=0; for(;i<len&&*(in+i)!=val;++i) { } int j= len-i-1; TreeNode* root = new TreeNode(*(in+i)); root->left =build(in,post,i); root->right=build(in+i+1,post+i,len-i-1); return root; } };
相关文章推荐
- 获取手机设备号
- WPF样式动画Trigger.EnterActions和Trigger.ExitActions(ExitActions其实可以不做任何事情)
- html 绘图阴影和透明度
- out-line virtual function
- 第一次开通博客,记录生活和工作的点点滴滴
- OS 级别性能监控
- 垂直和水平滑动刻度尺
- php读取文件
- MySQL进阶(一)
- javascript数组与字符串的相互转化
- 小练习---计算器
- 点击浏览器的返回按钮或手机的返回按钮让页面刷新
- iOS SQLite3 “增删改查”(Objective-C)
- Svn工作原理和服务搭建
- Hankson 的趣味题(codevs 1172)
- Oracle导出表(即DMP文件)的两种方法
- 基于C++浮点数(float、double)类型数据比较与转换的详解
- PhpStorm 默认快捷键
- Ubuntu虚拟机设置共享文件夹
- Murano Weekly Meeting 2016.07.19