本文簡要介紹
networkx.algorithms.components.is_biconnected
的用法。用法:
is_biconnected(G)
如果圖是雙連通的,則返回 True,否則返回 False。
一個圖是雙連通的,當且僅當,它不能通過僅刪除一個節點(以及該節點上的所有邊)來斷開連接。如果刪除一個節點會增加圖中斷開組件的數量,則該節點稱為關節點或切割頂點。雙連通圖沒有關節點。
- G:NetworkX 圖表
一個無向圖。
- biconnected:bool
如果圖是雙連通的,則為 True,否則為 False。
- 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.path_graph(4) >>> print(nx.is_biconnected(G)) False >>> G.add_edge(0, 3) >>> print(nx.is_biconnected(G)) True
相關用法
- Python NetworkX is_bipartite用法及代碼示例
- Python NetworkX is_bipartite_node_set用法及代碼示例
- Python NetworkX is_directed_acyclic_graph用法及代碼示例
- Python NetworkX is_graphical用法及代碼示例
- Python NetworkX is_locally_k_edge_connected用法及代碼示例
- Python NetworkX is_isomorphic用法及代碼示例
- Python NetworkX is_simple_path用法及代碼示例
- Python NetworkX is_distance_regular用法及代碼示例
- Python NetworkX is_strongly_regular用法及代碼示例
- Python NetworkX is_k_edge_connected用法及代碼示例
- Python NetworkX is_threshold_graph用法及代碼示例
- Python NetworkX is_isolate用法及代碼示例
- Python NetworkX is_semiconnected用法及代碼示例
- Python NetworkX is_weighted用法及代碼示例
- Python NetworkX is_aperiodic用法及代碼示例
- Python NetworkX is_eulerian用法及代碼示例
- Python NetworkX is_chordal用法及代碼示例
- Python NetworkX is_at_free用法及代碼示例
- Python NetworkX is_connected用法及代碼示例
- Python NetworkX is_negatively_weighted用法及代碼示例
- Python NetworkX isolates用法及代碼示例
- Python NetworkX inverse_line_graph用法及代碼示例
- Python NetworkX intersection用法及代碼示例
- Python NetworkX intersection_array用法及代碼示例
- Python NetworkX induced_subgraph用法及代碼示例
注:本文由純淨天空篩選整理自networkx.org大神的英文原創作品 networkx.algorithms.components.is_biconnected。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。