本文简要介绍
networkx.algorithms.connectivity.stoerwagner.stoer_wagner
的用法。用法:
stoer_wagner(G, weight='weight', heap=<class 'networkx.utils.heaps.BinaryHeap'>)
使用 Stoer-Wagner 算法返回加权最小边切割。
使用Stoer-Wagner 算法确定连通图的最小边切割。在加权情况下,所有权重必须为非负数。
算法的运行时间取决于所使用的堆类型:
堆类型
运行时间
二进制堆
斐波那契堆
配对堆
- G:NetworkX 图
图的边应该有一个由下面的权重参数命名的属性。如果此属性不存在,则认为边具有单位权重。
- weight:string
边的权重属性的名称。如果该属性不存在,则假定为单位重量。默认值:‘weight’。
- heap:类
算法中使用的堆类型。它应该是
MinHeap
的子类或实现兼容的接口。如果要使用库存堆实现,尽管渐近运行时间较慢,但对于没有优化属性访问的 Python 实现(例如 CPython),建议使用
BinaryHeap
而不是PairingHeap
。对于具有优化属性访问的 Python 实现(例如 PyPy),PairingHeap
提供更好的性能。默认值:BinaryHeap
。
- cut_value:整数或浮点数
最小切割中边的权重之和。
- partition:一对节点列表
定义最小割的节点分区。
- NetworkXNotImplemented
如果图是有向图或多重图。
- NetworkXError
如果图形的节点少于两个、未连接或具有negative-weighted 边。
参数:
返回:
抛出:
例子:
>>> G = nx.Graph() >>> G.add_edge("x", "a", weight=3) >>> G.add_edge("x", "b", weight=1) >>> G.add_edge("a", "c", weight=3) >>> G.add_edge("b", "c", weight=5) >>> G.add_edge("b", "d", weight=4) >>> G.add_edge("d", "e", weight=2) >>> G.add_edge("c", "y", weight=2) >>> G.add_edge("e", "y", weight=3) >>> cut_value, partition = nx.stoer_wagner(G) >>> cut_value 4
相关用法
- Python NetworkX stochastic_block_model用法及代码示例
- Python NetworkX strong_product用法及代码示例
- Python NetworkX strongly_connected_components用法及代码示例
- Python NetworkX strongly_connected_components_recursive用法及代码示例
- Python NetworkX single_source_dijkstra_path_length用法及代码示例
- Python NetworkX single_source_bellman_ford用法及代码示例
- Python NetworkX subgraph_view用法及代码示例
- Python NetworkX shortest_path用法及代码示例
- Python NetworkX square_clustering用法及代码示例
- Python NetworkX soft_random_geometric_graph用法及代码示例
- Python NetworkX sets用法及代码示例
- Python NetworkX simrank_similarity用法及代码示例
- Python NetworkX shell_layout用法及代码示例
- Python NetworkX single_source_bellman_ford_path用法及代码示例
- Python NetworkX sudoku_graph用法及代码示例
- Python NetworkX single_source_bellman_ford_path_length用法及代码示例
- Python NetworkX single_source_shortest_path_length用法及代码示例
- Python NetworkX snap_aggregation用法及代码示例
- Python NetworkX set_edge_attributes用法及代码示例
- Python NetworkX symmetric_difference用法及代码示例
- Python NetworkX selfloop_edges用法及代码示例
- Python NetworkX second_order_centrality用法及代码示例
- Python NetworkX simulated_annealing_tsp用法及代码示例
- Python NetworkX shortest_augmenting_path用法及代码示例
- Python NetworkX spring_layout用法及代码示例
注:本文由纯净天空筛选整理自networkx.org大神的英文原创作品 networkx.algorithms.connectivity.stoerwagner.stoer_wagner。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。