检查给定图是否是另一个图的子图的算法
我假设我们有 2 个带标签的图 G 和 T,算法确定 G 是否是 T 的子图以及主图 T 和子图 G 中的相应顶点应具有相同的标签
i assume that we have 2 labeled graphs G and T and the algorithm determine if G a subgraph of T and the corresponding vertices in the main graphT and the subgraph G should have same label
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这个问题被称为“子图同构”,它是 NP 完全的(因此可能很难)。您是否需要一个通用的解决方案,或者只是针对特定的图
G
?第二种情况要容易得多。 此处提供了一些有关算法的一般信息。 Boost Graph Library 中有其中一种算法的版本(实际上是为了解决更普遍的问题)(请参阅文档 此处)。That problem is called "subgraph isomorphism" and it is NP-complete (and so likely to be hard). Do you need a general solution for this, or just for a particular graph
G
? The second case is much easier. There is some general information about algorithms here. There is a version of one of the algorithms (actually, for a more general problem) in the Boost Graph Library (see documentation here).一般问题的一般答案:您想要解决的问题称为“子图同构”。请参阅此处以获取更多参考:http://en.wikipedia.org/wiki/Subgraph_isomorphism_problem 。
A general answer for a general question: the problem you want to solve is known as 'subgraph isomorphism.' Have a look here for further references: http://en.wikipedia.org/wiki/Subgraph_isomorphism_problem .