enumerate_all_cliques#

enumerate_all_cliques(G)[source]#

返回无向图中的所有团。

此函数返回一个团迭代器,每个团都是一个节点列表。迭代顺序按团的基数排列:首先是所有大小为1的团,然后是所有大小为2的团,依此类推。

Parameters:
GNetworkX图

一个无向图。

Returns:
迭代器

一个团迭代器,每个团都是图 G 中的节点列表。团的顺序按大小排列。

Notes

要获取所有团的列表,请使用 list(enumerate_all_cliques(G)) 。但请注意,在最坏情况下,此列表的长度可能是图中节点数量的指数级(例如,当图是完全图时)。此函数通过在搜索过程中仅在内存中保留当前候选节点列表来避免存储所有团。

实现方法改编自Zhang等人(2005)[R0487f749c898-1]_的算法,以输出所有发现的团。

此算法忽略自环和平行边,因为团通常不定义为包含此类边。

References

[1]

Yun Zhang, Abu-Khzam, F.N., Baldwin, N.E., Chesler, E.J., Langston, M.A., Samatova, N.F., “Genome-Scale Computational Approaches to Memory-Intensive Applications in Systems Biology”. Supercomputing, 2005. Proceedings of the ACM/IEEE SC 2005 Conference, pp. 12, 12–18 Nov. 2005. <https://doi.org/10.1109/SC.2005.29>.