本文簡要介紹
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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。