#Z01232. 趣味二叉树的构建

趣味二叉树的构建

题目描述

日常生活中树随处可见,但数据结构中的树是比较有趣的,它是我们真实所见树的倒置,然后再抽象的一种结构,二叉树顾名思义,就是2个分叉的树。详见下图,我们可以知道,1有2个儿子,左儿子是2,右儿子是3;2也有2个儿子,左儿子是4,右儿子是5;3只有左儿子是6,右儿子为空。想必聪明的你一定知道怎么做了吧,快去试试吧。

输入格式

输入由空格分隔的若干对(n,s)中的一个。n代表这个节点的数,s表示这个节点具体位置,“L”代表左子树,“R”代表右子树,"LR"代表左子树的右子树,这里的L或R都是以根  节点为参照物。(*注)s为空的节点是整颗树的根节点。每棵树中的最后一个条目是“()”。左括号和右括号之间不显示空白。所有节点都包含一个正整数。输入中的每棵树将至少由一个节点和不超过256个节点。输入被文件结尾终止。

输出格式

输出二叉树的层次遍历(层序遍历:即按照层次访问,通常用队列来做。访问根,访问子女,再访问子女的子女(越往后的层次越低)(两个子女的级别相同),通俗来讲就是第一层遍历完遍历第二层,直到遍历完第n层。),中间空格分隔,首尾没有空格。如果不能构建二叉树,请输出“Sorry, can't build”。

(1,) (2,L) (3,R) ()
(1314,L) (520,R) ()
1 2 3
Sorry, can't build