我有一个文本文件,其内容如下:
a.b.c.d
a.c
a.d
a.x.y.z
a.x.y.a
a.x.y.b
a.subtree
我想把它变成一棵树:
a
/ / \ \ \
b c d x subtree
| |
c y
| / | \
d z a b
编辑:具有两个节点的a.x.y.a路径需要被视为单独的实体.本质上,a.x.y.a就是路径.
我们可以像这样查看输入文件:
Level0.Level1.Level2...
我试图在python中做到这一点(我也熟悉java,也希望java的答案)但不知怎的,我在逻辑上无法做到这一点.
我的基本树结构有点像这样:
class Tree:
def __init__(self,data):
self.x = data
self.children = []
逻辑有点像这样:
for line in open("file","r"):
foos = line.split(".")
for foo in foos:
put_foo_in_tree_where_it_belongs()
我该如何处理这个问题?
另外,如果有任何java库帮助我这样做,我也可以转向java.只需要完成这个.