题解:递归
#include <iostream>
#include <cstdio>
using namespace std;
int n,c;
int lc[100],rc[100];
void q(int sp)
{
if(sp)
{
cout<<sp<<" ";
q(lc[sp]);
q(rc[sp]);
}
}
void z(int sp)
{
if(sp)
{
z(lc[sp]);
cout<<sp<<" ";
z(rc[sp]);
}
}
void h(int sp)
{
if(sp)
{
h(lc[sp]);
h(rc[sp]);
cout<<sp<<" ";
}
}
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
scanf("%d%d",&lc[i],&rc[i]);
q(1);cout<<endl;
z(1);cout<<endl;
h(1);cout<<endl;
return 0;
}