[ CodeVS冲杯之路 ] P3143

时间:2023-03-10 07:10:46
[ CodeVS冲杯之路 ] P3143

   不充钱,你怎么AC?

题目:http://codevs.cn/problem/3143/

大水题一道,只要会遍历,这里讲一下思路

先序遍历:先输出,然后左儿子,最后右儿子

中序遍历:先左儿子,再输出,最后右儿子

后序遍历:先左儿子,然后右儿子,最后输出

 #include<cstdio>
#include<cstdlib>
#include<cstring>
#include<cmath>
#include<iostream>
#include<algorithm>
#define N 20
using namespace std; int l[N],r[N],n;
void qian(int x)
{
if (x==) return;
printf("%d ",x);
qian(l[x]);
qian(r[x]);
}
void zhong(int x)
{
if (x==) return;
zhong(l[x]);
printf("%d ",x);
zhong(r[x]);
}
void hou(int x)
{
if (x==) return;
hou(l[x]);
hou(r[x]);
printf("%d ",x);
}
int main()
{
int i;
scanf("%d",&n);
for (i=;i<=n;i++) scanf("%d%d",&l[i],&r[i]);
qian();
printf("\n");
zhong();
printf("\n");
hou();
printf("\n");
return ;
}