本文簡要介紹
networkx.algorithms.components.biconnected_component_edges
的用法。用法:
biconnected_component_edges(G)
返回邊列表的生成器,輸入圖的每個雙連通分量都有一個列表。
雙連通分量是最大子圖,因此刪除一個節點(以及該節點上的所有邊)不會斷開子圖。請注意,節點可能是多個雙連接組件的一部分。這些節點是關節點或切割頂點。但是,每條邊都屬於一個且僅屬於一個雙連通分量。
請注意,按照慣例,二元組被認為是雙連接組件。
- G:NetworkX 圖表
一個無向圖。
- edges:列表生成器
邊列表生成器,每個雙組件一個列表。
- NetworkXNotImplemented
如果輸入圖不是無向圖。
參數:
返回:
拋出:
注意:
查找關節點和雙連接組件的算法是使用非遞歸深度優先搜索 (DFS) 實現的,該算法跟蹤後邊在 DFS 樹中達到的最高級別。當且僅當存在以
n
為根的子樹使得在DFS中鏈接到n
的前驅的n
的任何後繼沒有後邊時,節點n
是關節點樹。通過跟蹤 DFS 遍曆的所有邊,我們可以獲得雙連通分量,因為雙分量的所有邊將在關節點之間連續遍曆。參考:
- 1
Hopcroft, J.; Tarjan, R. (1973). “Efficient algorithms for graph manipulation”. Communications of the ACM 16: 372-378. doi:10.1145/362248.362272
例子:
>>> G = nx.barbell_graph(4, 2) >>> print(nx.is_biconnected(G)) False >>> bicomponents_edges = list(nx.biconnected_component_edges(G)) >>> len(bicomponents_edges) 5 >>> G.add_edge(2, 8) >>> print(nx.is_biconnected(G)) True >>> bicomponents_edges = list(nx.biconnected_component_edges(G)) >>> len(bicomponents_edges) 1
相關用法
- Python NetworkX biconnected_components用法及代碼示例
- Python NetworkX binomial_graph用法及代碼示例
- Python NetworkX bipartite_layout用法及代碼示例
- Python NetworkX bidirectional_dijkstra用法及代碼示例
- Python NetworkX boykov_kolmogorov用法及代碼示例
- Python NetworkX bfs_edges用法及代碼示例
- Python NetworkX bellman_ford_path用法及代碼示例
- Python NetworkX bfs_beam_edges用法及代碼示例
- Python NetworkX bfs_predecessors用法及代碼示例
- Python NetworkX bfs_successors用法及代碼示例
- Python NetworkX bridges用法及代碼示例
- Python NetworkX bfs_tree用法及代碼示例
- Python NetworkX bridge_components用法及代碼示例
- Python NetworkX bethe_hessian_matrix用法及代碼示例
- Python NetworkX bellman_ford_predecessor_and_distance用法及代碼示例
- Python NetworkX bellman_ford_path_length用法及代碼示例
- Python NetworkX negative_edge_cycle用法及代碼示例
- Python NetworkX voronoi_cells用法及代碼示例
- Python NetworkX numerical_edge_match用法及代碼示例
- Python NetworkX inverse_line_graph用法及代碼示例
- Python NetworkX LFR_benchmark_graph用法及代碼示例
- Python NetworkX write_graph6用法及代碼示例
- Python NetworkX DiGraph.__contains__用法及代碼示例
- Python NetworkX average_degree_connectivity用法及代碼示例
- Python NetworkX eulerian_circuit用法及代碼示例
注:本文由純淨天空篩選整理自networkx.org大神的英文原創作品 networkx.algorithms.components.biconnected_component_edges。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。