求中序遍历序列的第一个结点值(二叉树)
来源:互联网 发布:办公室有老鼠 知乎 编辑:程序博客网 时间:2024/06/08 00:10
1.题目:
Problem Description
设有一棵二叉树,其节点值为字符型并假设各值互不相等,采用二叉链表存储表示。现输入其扩展二叉树的前序遍历序列,要求建立该二叉树,并输出其中序遍历序列的第一个结点值。
Input
第一行为一个整数n,表示以下有n组数据,每组数据占一行,为扩展二叉树的前序遍历序列。
Output
输出该二叉树中序遍历序列的第一个结点值,若该点不存在则输出"null"。
Sample Input
2AB#D##C##ABD##E##C#F##
Sample Output
BD
2.参考代码:
#include <iostream>using namespace std;char ans[111];int t;struct BiNode{char data;BiNode* lchild,* rchild;};class BiTree{private:BiNode* root;BiNode* Creat();void Release(BiNode* root);public:BiTree();~BiTree();BiNode* GetRoot(){return root;}void InOrder(BiNode* root);};BiNode* BiTree::Creat(){BiNode* root;char ch;cin>>ch;if(ch=='#')root=NULL;else{root=new BiNode;root->data=ch;root->lchild=Creat();root->rchild=Creat();}return root;}void BiTree::Release(BiNode* root){if(root){Release(root->lchild);Release(root->rchild);delete root;}}BiTree::BiTree(){root=Creat();}BiTree::~BiTree(){Release(root);}void BiTree::InOrder(BiNode* root){if(root==NULL)return ;else{InOrder(root->lchild);ans[t++]=root->data;InOrder(root->rchild);}}int main(){int n;cin>>n;while(n--){BiTree bt;BiNode* root=bt.GetRoot();if(root==NULL){cout<<"null\n";continue;}bt.InOrder(root);cout<<ans[0]<<endl;t=0; }return 0;}
- 求中序遍历序列的第一个结点值(二叉树)
- 求后序遍历序列的第k个结点值(二叉树)
- 求二叉树中序遍历的第一个结点(向左一路狂奔吧)
- 两链表的第一个公共结点->二叉树两结点的最近共同父结点
- 二叉树两个结点的第一个共同祖先
- 找出二叉树中某两个结点的第一个公共祖先
- 找出二叉树中某两个结点的第一个公共祖先
- 在二叉树中求位于先序序列中第k个位置的结点的值
- 今天终于完成自己的第一个算法(非递归遍历二叉树)
- 二叉树的下一个结点(二叉树中序遍历的使用)
- 剑指offer 面试题63:二叉搜索树的第k个结点(二叉树中序遍历的应用) 题解
- 二叉树的创建,各种遍历,寻找结点,父结点,删除结点
- 数据结构--二叉树的遍历--统计二叉树中叶子结点的个数(先序遍历)
- 【二叉树】二叉搜索树的第k个结点
- 二叉树层次遍历如何判断当前结点是哪层的?
- 二叉树 —— 中序遍历结点的后继
- 二叉搜索树的后序遍历序列(判断后序遍历序列是否合法)
- 二叉树的基本操作精集(创建、遍历、求深度结点以及叶子结点个数)
- 【js学习笔记-071】--- 浏览器和屏幕信息
- 如何优化JAVA程序开发,的方案!
- Openstack源代码分析之keystone部分(二)--Controller->Manager->Driver
- java的讲述!
- 防空导弹六自由度仿真(源代码)
- 求中序遍历序列的第一个结点值(二叉树)
- mysql 双机热备
- Visual Studio调试之符号文件
- linux下nc的使用
- 滨州学院CSDN高校俱乐部第三期公开课——移动互联网的前景与Android移动开发
- QT5.1.1中MinGW4.8的环境变量配置
- java.lang.IllegalStateException
- opencart源码学习(一)——业务逻辑核心controller
- 无人机六自由度仿真代码