random_labeled_tree#
- random_labeled_tree(n, *, seed=None)[source]#
返回一个在
n
个节点上均匀随机选择的标记树。生成均匀分布的随机 Prüfer 序列并将其转换为相应的树是一种直接的方法,用于生成均匀分布的随机标记树。此函数实现了这种方法。
- Parameters:
- nint
节点数量,大于零。
- seedrandom_state
随机数生成状态的指示器。 参见 随机性
- Returns:
networkx.Graph
一个
networkx.Graph
,节点集合为 {0, …, n - 1}。
- Raises:
- NetworkXPointlessConcept
如果
n
为零(因为空图不是树)。
Examples
>>> G = nx.random_labeled_tree(5, seed=42) >>> nx.is_tree(G) True >>> G.edges EdgeView([(0, 1), (0, 3), (0, 2), (2, 4)])
可以通过将生成的边分配给
DiGraph
来创建具有 任意方向 边的树:>>> DG = nx.DiGraph() >>> DG.add_edges_from(G.edges) >>> nx.is_tree(DG) True >>> DG.edges OutEdgeView([(0, 1), (0, 3), (0, 2), (2, 4)])