189 8069 5689

洛谷P1305新二叉树-创新互联

题目描述

输入一串二叉树,输出其前序遍历。

创新互联建站主营浉河网站建设的网络公司,主营网站建设方案,成都app软件开发,浉河h5微信小程序定制开发搭建,浉河网站营销推广欢迎浉河等地区企业咨询

原题链接:

P1305 新二叉树 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

输入格式

第一行为二叉树的节点数 n。(1≤n≤26)

后面 n 行,每一个字母为节点,后两个字母分别为其左右儿子。特别地,数据保证第一行读入的节点必为根节点。

空节点用 * 表示

输出格式

二叉树的前序遍历。

输入输出样例

输入:

6
abc
bdi
cj*
d**
i**
j**

输出:

abdicj

AC代码
#includeusing namespace std;
int n,i,root;
struct da
{
    char l;
    char r;
}t[27];
void pre(char root) //先序遍历 也叫前序遍历
{
    if(root=='*')  return ;
    cout<>n;
    for(i=0;i>a;
        cin>>t[a].l >>t[a].r ; //存储~
        if(i==0)
          root=a; //找到根节点
    }
    pre(root); //根节点进入per函数进行先序遍历
    return 0;
}
思路:
签到题,重点是如何存储二叉树以及二叉树的先序遍历,可以设置一个结构体里面存储该节点的左右孩子(l和r)。题目已知第一个点必为树根,那么我们将树根这个点进入pre函数中,按照根节点--左孩子--右孩子递归的方式,先序输出该二叉树。
注:代码仅供参考,如有错误,请多多指正。

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


分享文章:洛谷P1305新二叉树-创新互联
文章分享:http://cdxtjz.cn/article/cohjjp.html

其他资讯