Graph 节点网络(图)可以表示为一个或多个树吗?

Graph 节点网络(图)可以表示为一个或多个树吗?,graph,tree,Graph,Tree,当我将图形转换为树时,我不介意在树中有重复的节点。让我用相反的方式解释。假设我有两棵树和一个公共元素。我可以在公共元素上连接它们来创建一个图形 我能否以相反的方向执行此操作,即从图形开始,将一个元素拆分为多个副本以创建多棵树?如果我理解正确,您希望通过允许原始节点在此树中多次出现来创建一棵包含原始链接的树。它是某种类型的,除了约束是保持所有链接(而不是像经典的生成树那样保持所有节点) 因此,您可以使用与发现经典生成树类似的方法。基本方法基于广度优先或深度优先搜索。从随机节点开始,将其添加到树中。

当我将图形转换为树时,我不介意在树中有重复的节点。让我用相反的方式解释。假设我有两棵树和一个公共元素。我可以在公共元素上连接它们来创建一个图形


我能否以相反的方向执行此操作,即从图形开始,将一个元素拆分为多个副本以创建多棵树?

如果我理解正确,您希望通过允许原始节点在此树中多次出现来创建一棵包含原始链接的树。它是某种类型的,除了约束是保持所有链接(而不是像经典的生成树那样保持所有节点)


因此,您可以使用与发现经典生成树类似的方法。基本方法基于广度优先或深度优先搜索。从随机节点开始,将其添加到树中。然后使用搜索算法搜索其邻居,每次到达节点时,都将其添加到树中(带有相应的链接)。您必须维护所有已处理链接的列表,这样您就不会对同一链接进行两次处理。此外,您需要一种方法来唯一地标识每个节点,以便在树上进行后续处理。例如,只需对原始图形中的节点进行编号。

对于任何边解决方案(作为一种极端情况)都不是一棵树吗?这似乎是正确的。然而,我想要尽可能少的树。