我正在尝试编写一种蛮力方法来检查两个图是否同构。我使用的是networkx类,但是我不想将内置函数用于同构。
我知道我必须检查图的所有节点排列,但是我不知道该怎么做。那么我将如何在networkx图中排列节点?

最佳答案

以下列出了图H的节点的所有排列。

from itertools import permutations

list(permutations(H.nodes(), len(H.nodes()))


之后,您可以比较它们的邻接矩阵。请参见以下代码:https://github.com/jgloves/graphTheory/blob/master/are_isomorphic.py

关于python - 与networkx的蛮力图同构,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30984009/

10-11 13:23