rustworkx.PyDiGraph.to_undirected#

PyDiGraph.to_undirected(multigraph=True, weight_combo_fn=None)#

从此图中生成一个新的PyGraph对象

这会创建一个新的PyGraph对象。该图中的所有边将在新图对象中作为无向边创建。对于有双向边的有向图,您可以设置multigraph=False来将它们压缩为单一边,并指定一个函数来合并边的权重/数据。 请注意,节点和边的权重/数据载荷将通过引用传递给新的PyGraph对象。

注意

如果节点已被移除,输出 PyGraph 中的节点索引可能会有所不同。

Parameters:
  • multigraph (bool) – 若设置为False,输出图将不允许平行边。取而代之的是,平行边将被压缩为单一边,并通过weight_combo_fn合并其数据。若未提供weight_combo_fn,将保留最大索引边的数据。默认值:True

  • weight_combo_fn (Callable) – 一个可选的Python可调用对象,用于接收两个边的权重/数据对象,并返回一个新的边权重/数据对象。当原始有向图中两个节点通过多个边(任一方向)连接时,添加边时将使用该返回的对象。

Returns:

一个新的PyGraph对象,为原图中的每条有向边创建一条无向边

Return type:

PyGraph