博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Construct Binary Tree from Inorder and Postorder Traversal
阅读量:6246 次
发布时间:2019-06-22

本文共 1015 字,大约阅读时间需要 3 分钟。

后序与中序得原二叉树,与上篇类似。

/** * 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
&inorder, vector
&postorder) { // Start typing your C/C++ solution below // DO NOT write int main() function return build(inorder,postorder,inorder.size(),0,postorder.size()-1); } TreeNode* build(vector
&inorder,vector
&postorder,int size,int i,int p) { if(size==0) return NULL; TreeNode* head = (TreeNode*)malloc(sizeof(TreeNode)); head->val = postorder[p]; int j; for(j=i;j
left = build(inorder,postorder,j-i,i,p-size+(j-i)); head->right = build(inorder,postorder,size-(j-i)-1,j+1,p-1); return head; }};

 

转载于:https://www.cnblogs.com/727713-chuan/p/3318470.html

你可能感兴趣的文章
[转]使用 C++11 编写 Linux 多线程程序
查看>>
[译]Kinect for Windows SDK开发入门(六):骨骼追踪基础 上
查看>>
[译]Kinect for Windows SDK开发入门(八):骨骼追踪进阶 上
查看>>
关于数据库设计--博客系统2
查看>>
AWS 认证攻略(SA)
查看>>
iOS完整学习路线图
查看>>
JAVA_Thread_生产消费模式
查看>>
IceCTF-Matrix
查看>>
java.util.HashSet源码分析
查看>>
yield与yield from
查看>>
两数相加LeetCode
查看>>
c/c++ 获取文件夹或目录下的文件
查看>>
bzoj3316: JC loves Mkk(单调队列+分数规划)
查看>>
P4046 [JSOI2010]快递服务
查看>>
8分钟学会使用AutoMapper
查看>>
使用weka训练一个分类器
查看>>
C#根据WSDL文件生成WebService服务端代码
查看>>
[FJOI2018]领导集团问题
查看>>
thinkphp用ajax遇到的坑——ajax请求没有反应
查看>>
Microsoft Visual Studio 中出现 Windows has triggered a breakpoint in xxx.exe的一个解决方案
查看>>