is_pseudographical#

is_pseudographical(sequence)[source]#

如果某个伪图可以实现该序列,则返回 True。

每个和为偶数的非负整数序列都是伪图的(参见 [1])。

Parameters:
sequence列表或可迭代容器

一个整数节点度序列

Returns:
validbool

如果序列是伪图的度序列,则返回 True,否则返回 False。

Notes

最坏情况下的运行时间是 \(O(n)\),其中 n 是序列的长度。

References

[1]

F. Boesch 和 F. Harary。”图及其度列表的线移除算法”,IEEE 电路与系统汇刊,CAS-23(12), 第 778-782 页(1976 年)。

Examples

>>> G = nx.Graph([(1, 2), (1, 3), (2, 3), (3, 4), (4, 2), (5, 1), (5, 4)])
>>> sequence = (d for _, d in G.degree())
>>> nx.is_pseudographical(sequence)
True

测试一个非伪图序列: >>> sequence_list = [d for _, d in G.degree()] >>> sequence_list[-1] += 1 >>> nx.is_pseudographical(sequence_list) False