random_unlabeled_rooted_tree#

random_unlabeled_rooted_tree(n, *, number_of_trees=None, seed=None)[source]#

返回一个随机均匀选择的未标记有根树的数量

返回一个或多个(取决于 number_of_trees ) 具有 n 个节点的未标记有根树,随机均匀选择。

Parameters:
nint

节点数量

number_of_treesint 或 None(默认)

如果不是 None,则生成并返回此数量的树。

seed整数, random_state, 或 None(默认)

随机数生成状态的指示器。 参见 随机性

Returns:
networkx.Graphnetworkx.Graph 列表

一个单独的 networkx.Graph (或列表,如果指定了 number_of_trees ),节点集合为 {0, …, n - 1}。 “root” 图属性标识树的根。

Raises:
NetworkXPointlessConcept

如果 n 为零(因为空图不是树)。

Notes

树的生成使用 [1] 中的 “RANRUT” 算法。 该算法需要计算一些相对昂贵的计数函数:如果需要多个树, 建议使用 number_of_trees 可选参数来重用计数函数。

References

[1]

Nijenhuis, Albert, 和 Wilf, Herbert S. “组合算法:适用于计算机和计算器。” Academic Press, 1978. https://doi.org/10.1016/C2013-0-11243-3