core_number#

core_number(G)[source]#

返回每个节点的核数。

k-核是包含度数大于等于 k 的节点的最大子图。

节点的核数是包含该节点的 k-核中 k 的最大值。

参数:
GNetworkX 图

无向图或有向图

返回:
core_number字典

一个字典,键为节点,值为核数。

抛出:
NetworkXNotImplemented

如果 G 是多重图或包含自环。

注意

对于有向图,节点度数定义为入度 + 出度。

参考

[1]

An O(m) Algorithm for Cores Decomposition of Networks Vladimir Batagelj and Matjaz Zaversnik, 2003. https://arxiv.org/abs/cs.DS/0310049

示例

>>> degrees = [0, 1, 2, 2, 2, 2, 3]
>>> H = nx.havel_hakimi_graph(degrees)
>>> nx.core_number(H)
{0: 1, 1: 2, 2: 2, 3: 2, 4: 1, 5: 2, 6: 0}
>>> G = nx.DiGraph()
>>> G.add_edges_from([(1, 2), (2, 1), (2, 3), (2, 4), (3, 4), (4, 3)])
>>> nx.core_number(G)
{1: 2, 2: 2, 3: 2, 4: 2}
----

其他后端实现了此函数

cugraphGPU 加速后端。

暂不支持有向图。