Algorithm 如何从给定的父子列表创建树,但子节点可以';不能在其父节点之前创建?
包含父项和子项的列表。这里根节点的父节点是-1。我必须从这里创建一棵树,但任何子节点都不能在其父节点之前创建 父子列表Algorithm 如何从给定的父子列表创建树,但子节点可以';不能在其父节点之前创建?,algorithm,tree,depth-first-search,breadth-first-search,Algorithm,Tree,Depth First Search,Breadth First Search,包含父项和子项的列表。这里根节点的父节点是-1。我必须从这里创建一棵树,但任何子节点都不能在其父节点之前创建 父子列表 3 7 3 6 2 5 -1 1 2 4 1 2 1 3 以下算法将起作用: 初始化映射从整数到列表/数组[Integer]。这里,键表示父项,列表/数组[整数]表示子项 迭代上述父子列表。对于每个条目,填充步骤1中创建的Map。 i、 e.对于问题中提到的示例,Map将如下所示: -1 -> [1] 1 -> [2, 3] 2 -> [4, 5] 3 -> [6,
3 7
3 6
2 5
-1 1
2 4
1 2
1 3
以下算法将起作用:
映射
从整数
到列表/数组[Integer]
。这里,键
表示父项
,列表/数组[整数]
表示子项
父子列表
。对于每个条目,填充步骤1中创建的Map
。
i、 e.对于问题中提到的示例,Map
将如下所示:
-1 -> [1]
1 -> [2, 3]
2 -> [4, 5]
3 -> [6, 7]
Map
后,按键对Map
进行排序映射
中的每个键、值
,为父节点创建节点,然后为其子节点创建节点。对于剩余的键、值
对,请遵循此操作这将确保
父级
总是在子级
以下算法工作之前准备好:
映射
从整数
到列表/数组[Integer]
。这里,键
表示父项
,列表/数组[整数]
表示子项
父子列表
。对于每个条目,填充步骤1中创建的Map
。
i、 e.对于问题中提到的示例,Map
将如下所示:
-1 -> [1]
1 -> [2, 3]
2 -> [4, 5]
3 -> [6, 7]
Map
后,按键对Map
进行排序映射
中的每个键、值
,为父节点创建节点,然后为其子节点创建节点。对于剩余的键、值
对,请遵循此操作这将确保
家长
总是在孩子
之前做好准备。上面的答案对您有帮助吗?如果它对你有帮助的话,考虑一下回答。上面的答案有助于你吗?如果它对你有帮助,可以考虑回答。