题解时间超速———C语言输入输出
2025-07-31 18:30:43
发布于:上海
1阅读
0回复
0点赞
#include<cstdio>
using namespace std;
struct tree{
int root;
int left;
int right;
}a[101];
int n;
void dfs_first(int x)
{
printf("%d",x);
printf("%c",' ');
if(a[x].left!=0)dfs_first(a[x].left);
if(a[x].right!=0)dfs_first(a[x].right);
}
void dfs_second(int x)
{
if(a[x].left!=0)dfs_second(a[x].left);
printf("%d",x);
printf("%c",' ');
if(a[x].right!=0)dfs_second(a[x].right);
}
void dfs_third(int x)
{
if(a[x].left!=0)dfs_third(a[x].left);
if(a[x].right!=0)dfs_third(a[x].right);
printf("%d",x);
printf("%c",' ');
}
int main()
{
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
scanf("%d%d%d",&a[i].root,&a[i].left,&a[i].right);
}
dfs_first(1);
printf("%c",'\n');
dfs_second(1);
printf("%c",'\n');
dfs_third(1);
return 0;
}
这里空空如也
有帮助,赞一个