我有一个文本文件,其内容如下:
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
需要被视为单独的实体。本质上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。只需要完成这个。