#CJT3. 树的先序遍历

    ID: 7711 传统题 1000ms 256MiB 尝试: 0 已通过: 0 难度: (无) 上传者: 标签>CSP-J遍历先序遍历CSP-J树的题面补充

树的先序遍历

题目描述

给定一棵以 11 号结点为根的二叉树,结点编号为 1n1 \sim n。对于每个结点,输入给出它的左儿子和右儿子编号;如果某个儿子不存在,用 00 表示。输入保证这些结点构成一棵合法的二叉树。

请你输出这棵二叉树的先序遍历序列。先序遍历规则:先访问根结点,再先序遍历左子树,最后先序遍历右子树。

输入格式

第一行一个整数 nn,表示结点个数。

接下来 nn 行,第 ii 行包含两个整数 li,ril_i, r_i,分别表示结点 ii 的左儿子和右儿子编号。若不存在,则对应位置为 00

输出格式

输出一行,共 nn 个整数,表示先序遍历序列,相邻两个整数之间用一个空格隔开。

样例

5
2 3
4 5
0 0
0 0
0 0
1 2 4 5 3

样例分析
结点 11 的左儿子是 22,右儿子是 33;结点 22 的左儿子是 44,右儿子是 55。按照先序遍历规则递归访问,得到序列 1,2,4,5,31, 2, 4, 5, 3

数据范围

对于 100%100\% 的数据:1n10001 \le n \le 1000