簡體   English   中英

子圖之間的 networkx 邊

[英]networkx edges between subgraphs

我有一個圖 (G),其中節點被分成兩個不同的子圖 (H, I)。 每個子圖中的節點都是相互連接的。 我正在尋找的是一個邊緣列表,這些邊緣是子圖之間的連接,並且只是那些在某種程度上可擴展到大圖的連接。

設置:

import networkx as nx

G = nx.path_graph(10)
H = nx.subgraph(G, [0,1,2,3,4])
I = nx.subgraph(G, [5,6,7,8,9])
G.add_edge(1,7)
G.add_edge(2,9)

Output 我要:

 [(4,5),(1,7),(2,9)]

在此處輸入圖像描述

您可以簡單地遍歷邊緣並檢查它們是否屬於不同的圖形。

這應該是 O(n) 圖形表現得像集合:

out = [e for e in G.edges
       if e[0] in H and e[1] in I
       or e[0] in I and e[1] in H]

output:

[(1, 7), (2, 9), (4, 5)]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM