is_perfect_matching#

is_perfect_matching(G, matching)[source]#

如果 matching 是图 G 的一个完美匹配,则返回 True。

图中的 完美匹配 是指每个顶点恰好有一条边与之关联的匹配。

Parameters:
GNetworkX 图
matching字典或集合

表示匹配的字典或集合。如果是字典,必须满足 matching[u] == vmatching[v] == u 对于匹配中的每条边 (u, v) 。如果是集合,必须包含形式为 (u, v) 的元素,其中 (u, v) 是匹配中的边。

Returns:
bool

给定的集合或字典是否表示图中的有效完美匹配。

Examples

>>> G = nx.Graph([(1, 2), (1, 3), (2, 3), (2, 4), (3, 5), (4, 5), (4, 6)])
>>> my_match = {1: 2, 3: 5, 4: 6}
>>> nx.is_perfect_matching(G, my_match)
True