各位有没有什么比较好的方式来把"把路径字符串转换成一棵树,并且可以通过输入一个节点把它的子节点全部输出来"。 比如说现在我有以下字符串: A-B-C-D; A-B-C-F; A-B-H; A-B-G-T; 转换以后就成这个样子: A B C H D F G 比如说我输入B节点,那么输出的结果就是: C H D F G 我现在能想法想到的方法是,对原始数据处理一下。先增加一个root节点,现在我需要查root下的所有子节点。那么就遍历字符串数组A,并且设置level=0,把字符串用"-"分割成数组B,取出B[0]的值并且去重。这些取出来都是第一层的。然后再通过B[0]的值,去找它的子节点。如果递归下去。这是通过root来生成树。 接下来是,通过输入一个节点C,那么在输入的时候,我需要把它的层级一起传过来3|C,这种格式。其它地方和查找root的是一样的。只是把B[0]改成相应的B[3],接下来也是递归。 这种方式的前提是同一层级下,不能有相同的名字。 大家有没有什么比较效率和思路更加清晰的方式呀?