类文档

图中顶点的匹配。

无向图的匹配是一组边,使得每个顶点至多与一条匹配边相邻。当每个顶点都与恰好一条匹配边相邻时,该匹配称为完美匹配。该类在igraph中用于表示无向图中的非完美匹配和完美匹配。

该类通常不直接实例化,所有操作由返回匹配的函数处理。

示例

>>> from igraph import Graph
>>> g = Graph.Famous("noperfectmatching")
>>> matching = g.maximum_matching()
方法 __init__ 初始化匹配。
方法 __len__ 未文档化
方法 __repr__ 未文档化
方法 __str__ 未文档化
方法 edges 返回一个包含匹配中边的边序列。
方法 is_matched 返回给定顶点是否与另一个顶点匹配。
方法 is_maximal 返回匹配是否是最大匹配。
方法 match_of 返回给定顶点匹配到的顶点。
方法 matching.setter 设置匹配向量。
方法 types.setter 未文档化
属性 graph 返回与匹配对应的图。
属性 matching 返回匹配向量,其中元素 i 包含顶点 i 匹配到的顶点的 ID。
属性 types 如果图是二分图,则返回类型向量。
实例变量 _graph 未文档化
实例变量 _matching 未文档化
实例变量 _num_matched 未文档化
实例变量 _types 未文档化
def __init__(self, graph, matching, types=None): (source)

初始化匹配。

参数
graph匹配所属的图。
matching一个数值向量,其中元素 i 对应于图的顶点 i。如果相应顶点未匹配,则元素 i 为 -1 或,否则它包含顶点 i 匹配到的顶点的索引。
types如果图是二分图,则为顶点的类型。它必须是顶点属性的名称(将为所有顶点检索)或列表。列表中的元素将转换为布尔值TrueFalse,这将决定给定顶点属于二分图的哪一部分。
引发
ValueError如果提供的匹配向量没有描述一个有效的图匹配。
def __len__(self): (source)

未文档化

def __repr__(self): (source)

未文档化

def __str__(self): (source)

未文档化

def edges(self): (source)

返回一个包含匹配中边的边序列。

如果一对匹配顶点之间存在多条边,则只返回其中一条。

def is_matched(self, vertex): (source)

返回给定顶点是否与另一个顶点匹配。

def is_maximal(self): (source)

返回匹配是否是最大匹配。

当无法再用额外边扩展匹配时,该匹配为最大匹配;换句话说,图中未匹配的顶点必须仅与已匹配的顶点相邻。

def match_of(self, vertex): (source)

返回给定顶点匹配到的顶点。

参数
vertex我们感兴趣的顶点;可以是整数索引或 Vertex 实例。
返回
与给定顶点匹配的顶点索引,可以是整数索引(如果 vertex 是整数)或 Vertex 实例。当顶点未匹配时,返回None.
def matching(self, value): (source)

设置匹配向量。

参数
value匹配向量,其中第 i 个位置必须包含与顶点 i 匹配的顶点的 ID,或者-1如果顶点未匹配。
引发
ValueError如果提供的匹配向量没有描述一个有效的图匹配。
def types(self, value): (source)

未文档化

返回与匹配对应的图。

返回匹配向量,其中元素 i 包含顶点 i 匹配到的顶点的 ID。

匹配向量将包含-1对于未匹配的顶点。

如果图是二分图,则返回类型向量。

类型向量的元素 i 将是FalseTrue取决于顶点 i 属于二分图的哪一侧。

对于非二分图,此属性返回None.

未文档化

_matching = (source)

未文档化

_num_matched = (source)

未文档化

未文档化