假设我在 NetworkX 中制作了有向图:
import networkx as nx
G = nx.DiGraph()
n = ["A","B","C","D","E","F","H","I","J","K","L","X","Y","Z"]
e = [("A","Z"),("Z","B"),("B","Y"),("Y","C"),("C","G"),("G","H"),("G","I"),("I","J"),("K","J"),("J","L"),("F","E"),("E","D"),("D","X"),("X","C")]
G.add_nodes_from(n)
G.add_edges_from(e)
我将如何删除所有入度和出度等于 1 的节点,以便我的图表看起来像这样?:
import networkx as nx
G = nx.DiGraph()
n = ["A","C","F","G","H","J","K","L"]
e = [("A","C"),("C","G"),("G","H"),("G","J"),("K","J"),("J","L")
G.add_nodes_from(n)
G.add_edges_from(e)
这个想法是删除“流通”节点并保持连接性。