Luogu P1305 新二叉树

 P1305 新二叉树

题目描述

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

输入输出格式

输入格式:

第一行为二叉树的节点数n。

后面n行,每一个字母为节点,后两个字母分别为其左右儿子。

空节点用*表示

输出格式:

前序排列的二叉树

输入输出样例

输入样例#1:
6
abc
bdi
cj*
d**
i**
j**
输出样例#1:
abdicj

  

  这道题其实很简单,在这里写下就是要让大家看一个简单的方法。(感谢javalyc童鞋)

 1 #include <cstdio>
 2 
 3 char a[100][3];
 4 int n;
 5 
 6 void fff(char c)
 7 {
 8     if(c == '*')
 9         return;
10     printf("%c", c);
11     for(int i=1; i<=n; i++)
12         if(a[i][0] == c)
13         {
14             fff(a[i][1]);
15             fff(a[i][2]);
16         }
17 }
18 
19 int main()
20 {
21     scanf("%d", &n);
22     getchar();
23     for(int i = 1; i<=n; i++)
24         scanf("%s", a[i]);
25     fff(a[1][0]);
26     return 0;
27 }
原文地址:https://www.cnblogs.com/yBaka/p/7398225.html