strong_product#
- strong_product(G, H)[source]#
返回 G 和 H 的强积图。
图 G 和 H 的强积图 \(P\) 的节点集是节点集的笛卡尔积,即 \(V(P)=V(G) \times V(H)\)。 \(P\) 具有边 \(((u,x), (v,y))\) 如果满足以下任一条件:
\(u=v\) 且 \((x,y)\) 是 H 中的边
\(x=y\) 且 \((u,v)\) 是 G 中的边
\((u,v)\) 是 G 中的边且 \((x,y)\) 是 H 中的边
- Parameters:
- G, H: 图
Networkx 图。
- Returns:
- P: NetworkX 图
G 和 H 的笛卡尔积。如果 G 或 H 是多重图,则 P 将是多重图。如果 G 和 H 是有向的,则 P 将是有向的,如果 G 和 H 是无向的,则 P 将是无向的。
- Raises:
- NetworkXError
如果 G 和 H 不都是有向的或都是无向的。
Notes
P 中的节点属性是 G 和 H 节点属性的二元组。 缺失的属性被赋值为 None。
Examples
>>> G = nx.Graph() >>> H = nx.Graph() >>> G.add_node(0, a1=True) >>> H.add_node("a", a2="Spam") >>> P = nx.strong_product(G, H) >>> list(P) [(0, 'a')]
边属性和边键(对于多重图)也会被复制到新的积图。