less than 1 minute read

一·基础题目

1.

森林转换为二叉树

题目描述

给定一棵森林(由多棵树组成),每棵树是一个普通树,每个节点都有多个子节点。你需要将这棵森林转换为一棵二叉树。

在转换的过程中,使用如下规则:

  • 1.将森林中的每一棵树转换为一棵二叉树。
  • 2.对于树中的每个节点,保持左子树指向第一个子节点,右子树指向其下一个兄弟节点。

输入格式

  • 第一行:一个整数 n (1 ≤ n ≤ 100),表示森林里有n棵树。
  • 接下来每棵树有若干行表示树的结构,节点编号从1开始,每个节点的第一个数字是该节点的值,后面跟着它的子节点(如果有)。每棵树的结构通过一个以0结尾的数字表示。多个树之间的输入用一个空行隔开。

输出格式

输出转换后的二叉树节点的层序遍历顺序。对于每个节点,输出它的值、左子节点的值和右子节点的值。如果某个子树不存在,输出0表示空节点。

输入样例

1
1 2 3 0
2 4 5 0
3 0

2
1 2 0
2 3 0
0
4 0

输出样例

1 2 3
2 4 5
3 0 0

1 2 0
2 3 0
0
4 0

解:


2.

二叉树转换为森林

Tags:

Categories:

Updated:

Comments