找到没有edge-networkx python的节点对

我想找到所有可能没有边连接它们的节点对,然后检查这些节点对是否在另一个图中有边.有什么建议? 最佳答案 如果您不关心性能,那么您可以尝试:

g1Edges = Graph1.edges()
notG1Edges = set()
for a in Graph1.nodes():
    for b in Graph1.nodes():
        if a != b and (a,b) not in g1Edges:
            notG1Edges.add( (a, b) )
# print edges missed in Graph1 and Graph2
print notG1Edges.difference( Graph2.edges_iter() )

注1:这适用于有向图

注2:如果你想从Graph2中找不到Graph1中边缘的子集,那么假设最好在Graph2的边缘上操作

点赞