【Openjudge】由中根序列和后根序列重建二叉树
来源:互联网 发布:mac制作win7安装u盘 编辑:程序博客网 时间:2024/05/24 04:42
代码写的比较乱,凑合看吧。
#include<iostream>#include<stack>#include<vector>#include<algorithm>using namespace std;class node{public:int num;node *left;node *right;public:node(int n = 0){num = n;left = NULL;right = NULL;}};class Tree{public:node* root;public:Tree (node *n = NULL){root = n;if(n != NULL){root->num = n->num;root->left = n->left;root->right = n->right;}}};vector<int> mid;vector<int> rev;typedef vector<int>::iterator ite;ite creattree(node* nroot, ite rroot, ite mleft, ite mright){nroot->num = *rroot;ite mid = find(mleft, mright, *rroot);ite bound = rroot;if (mid != mright){nroot->right = new node;bound = creattree(nroot->right, rroot - 1, mid + 1, mright);}if ( mid != mleft){nroot->left = new node;bound = creattree(nroot->left, bound - 1, mleft, mid - 1);}return bound;}int main(){int n;char c;while (cin >> n){mid.push_back(n);c = cin.get();if (c == '\n'){break;}}while (cin >> n){rev.push_back(n);c = cin.get();if (c == '\n')break;}Tree tr;vector<int>::iterator rit = rev.end() - 1;tr.root = new node(rev.back());creattree(tr.root, rit, mid.begin(), mid.end() - 1);stack<node*> travel;travel.push(NULL);node * pointer = tr.root;while (pointer){cout << pointer->num << ' ';if (pointer->right){travel.push(pointer->right);}if (pointer->left){pointer = pointer->left;}else{pointer = travel.top();travel.pop();}}return 0;}
阅读全文
0 0
- 【Openjudge】由中根序列和后根序列重建二叉树
- 由中根序列和后根序列重建二叉树
- 由中根序列和后根序列重建二叉树
- 由中根序列和后根序列重建二叉树
- 由中根序列和后根序列重建二叉树
- 二叉树基础-由中根序列和后根序列重建二叉树(数据结构基础 第5周)
- 利用中根序列和后根序列重建二叉树
- 数据结构与算法B代码编写作业,由中根序列和后根序列重建二叉树,解题报告&AC代码
- Java实现由前序序列和中序序列重建二叉树,并后序输出。
- 树——由中序和前序,中序和后序序列重建二叉树
- 由前序遍历序列和中序遍历序列重建二叉树
- 由先序序列/后序序列和中序序列构造二叉树
- 由二叉树的后序序列和中序序列构成二叉树
- 剑指offer-重建二叉树 由前序和中序遍历序列建树
- 由中序序列和后序序列唯一确定一棵二叉树
- 由中序遍历序列和后序遍历序列构造二叉树(递归实现)
- 由中序序列和后序序列唯一确定一棵二叉树
- 中/后序遍历序列重建二叉树
- Java面试经典题目
- JQuery DataTables 服务端自定义查询(最新版本介绍)
- 扩展欧几里得--part2
- 【逆序对】【cofun1917】奇数码问题
- 【Direct3D】光照与材质
- 【Openjudge】由中根序列和后根序列重建二叉树
- github 下载修改上传使用
- Python3之Django Web框架分页多页码处理一
- 手机APP测试要点
- Zookeeper 学习总结(一)
- wingied 6 破解
- 就这次测试总结
- Python中的urlencode
- windows系统 windows7 windows10系统下安装和配置以及使用redis