LeetCode:105_Construct Binary Tree from Preorder and Inorder Traversal | 根据前序和中序遍历构建二叉树 | Medium
2024-10-16 15:56:11
要求:通过二叉树的前序和中序遍历序列构建一颗二叉树
代码如下:
struct TreeNode {
int val;
TreeNode *left;
TreeNode *right;
TreeNode(int x): val(x),left(NULL), right(NULL) {}
}; typedef vector<int>::iterator Iter;
TreeNode *buildTree(vector<int> &preorder, vector<int> &inorder)
{
return buildTreeRecur(preorder.begin(), preorder.end(), inorder.begin(), inorder.end());
} TreeNode *buildTreeRecur(Iter pstart, Iter pend, Iter istart, Iter iend)
{
if(pstart == pend || istart == iend)
return NULL;
int ival = *pstart;
Iter ipos = find(istart, iend, ival);
TreeNode *res = new TreeNode(ival);
res->left = buildTreeRecur(pstart + , pstart++(ipos-istart), istart, ipos);
res->right = buildTreeRecur(pstart++(ipos-istart), pend, ipos+, iend);
return res;
}
最新文章
- 基于sticky组件,实现带sticky效果的tab导航和滚动导航
- maven打包日志输出优化-去掉泛型与过时的警告
- SQLserver 表字段修改语句
- Android 生成含签名文件的apk安装包
- java项目
- PHP得出附件扩展名
- .cshrc
- weak和assign区别
- bzoj1355——2016——3——15
- DBCC CHECKIDENT在 SQL Server修改指定表的当前标识值
- [2019.03.16]使用DOM操作函数和CSS选择器来针对已有的HTML进行只凭JS的改动
- 自定义redis连接池(字典操作)
- SpringMVC-1-(简介及HelloWord)
- iframe子页面控制父页面滚动高度,直接蹦到父页面开头
- 你想要的Python面试都在这里了【315+道题】
- 面试3——java集合类总结(Map)
- linux 系统获得当前文件夹下存在的所有文件 scandir函数和struct dirent **namelist结构体[转]
- python基础--os模块和sys模块
- Android -- Service的开启关闭与生命周期
- Android跟踪NDK崩溃信息
热门文章
- 20175314 《Java程序设计》第一周学习总结
- 186. Reverse Words in a String II 翻转有空格的单词串 里面不变
- [leetcode]156.Binary Tree Upside Down颠倒二叉树
- 28.Mysql权限与安全
- (转)Android四大组件——Activity跳转动画、淡出淡入、滑出滑入、自定义退出进入
- etcd-v2第二集
- [字符串]TrBBnsformBBtion
- NCUAP 利用java自带方法实现导入excel取数据
- exchange 2010 数据库管理
- 【APP测试(Android)】--安全测试