题目:二叉树的广度优先遍历
有一棵二叉树,每个节点由一个大写字母标识(最多26个节点)。现有两组字母,分别表示后序遍历(左孩子->右孩子->父节点)和中序遍历(左孩子->父节点->右孩子)的结果,请输出层次遍历的结果。
输入描述:
输入为两个字符串,分别是二叉树的后续遍历和中序遍历结果。
输出描述:
输出二叉树的层次遍历结果。
示例1 输入输出示例仅供调试,后台判题数据一般不包含示例
输入
复制
CBEFDA CBAEDF
输出
复制
ABDCEF
说明
二叉树为: A / \ B D / / \ C E F
代码:
public class Main {
public static class Node {
char val;
Node left;
Node right;
public Node(char x) {
val = x;
}
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String[] s = sc.nextLine().split(" ");
Node root = build(s[1], s[0], 0, s[1].length() - 1, 0, s[0].length() - 1);