博客
关于我
G - 数据结构实验之二叉树七:叶子问题
阅读量:770 次
发布时间:2019-03-23

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

Description

已知一个按先序输入的字符序列,如abd,eg,cf,(其中,表示空结点)。请建立该二叉树并按从上到下从左到右的顺序输出该二叉树的所有叶子结点。

Input

输入数据有多行,每一行是一个长度小于50个字符的字符串。

Output

按从上到下从左到右的顺序输出二叉树的叶子结点。

#include    #include      using namespace std;typedef struct node{       char data;        node *l,*r;}Tree;char pre[55];int cnt=0;Tree* buildtree_pre(){       if(pre[cnt]==',')    {           cnt++;        return NULL;    }    Tree *root = new Tree;    root->data = pre[cnt++];    root->l = buildtree_pre();    root->r = buildtree_pre();    return root;}//思路和层次遍历差不多void leave_out(Tree *root){       queue,t;    t.push(root);    while(!t.empty())    {        root = t.front();        t.pop();        if(root)        {            if(!root->l && !root->r)                cout
l); t.push(root->r); } }}int main(){ ios::sync_with_stdio(false); Tree *root; while(cin>>pre) { cnt=0; root = buildtree_pre(); leave_out(root); }}

转载地址:http://jaezk.baihongyu.com/

你可能感兴趣的文章
mysql建立索引的几大原则
查看>>
Mysql建表中的 “FEDERATED 引擎连接失败 - Server Name Doesn‘t Exist“ 解决方法
查看>>
mysql开启bin-log日志,用于canal同步
查看>>
MySQL开源工具推荐,有了它我卸了珍藏多年Nactive!
查看>>
MySQL异步操作在C++中的应用
查看>>
MySQL引擎讲解
查看>>
Mysql当前列的值等于上一行的值累加前一列的值
查看>>
MySQL当查询的时候有多个结果,但需要返回一条的情况用GROUP_CONCAT拼接
查看>>
MySQL必知必会(组合Where子句,Not和In操作符)
查看>>
MySQL必知必会总结笔记
查看>>
MySQL快速入门
查看>>
MySQL快速入门——库的操作
查看>>
mysql快速复制一张表的内容,并添加新内容到另一张表中
查看>>
mysql快速查询表的结构和注释,字段等信息
查看>>
mysql怎么删除临时表里的数据_MySQL中关于临时表的一些基本使用方法
查看>>
mysql性能优化
查看>>
mysql性能优化学习笔记-存储引擎
查看>>
MySQL性能优化必备25条
查看>>
Mysql性能优化(1):SQL的执行过程
查看>>
Mysql性能优化(2):数据库索引
查看>>