时间限制: 1000ms
空间限制: 65536kB
题目描述
时间限制:1s 空间限制:512M
题目描述:
给定一颗以 1 为根的二叉树,输出它的中序遍历。
输入格式:
第一行一个正整数 nn 表示节点个数。(1≤ n≤100)(1≤ n≤100)
接下来 nn 行,第 ii 行两个正整数分别表示节点 ii 的左右儿子,如果没有儿子则为 −1−1
输出格式:
一行,n 个正整数表示答案
样例输入1:
3
2 3
-1 -1
-1 -1
样例输出1:
2 1 3
AC代码:
#include<bits/stdc++.h>
using namespace std;
int n,homo[114],lp[514],x,y;
void dfs(int id){
if(id==-1)return;
dfs(homo[id]);
cout<<id<<" ";
dfs(lp[id]);
}
int main(){
cin>>n;
for(int i=1; i<=n;i++){
cin>>x>>y;
homo[i]=x,lp[i]=y;
}dfs(1);
return 0;
}