当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python NetworkX topological_generations用法及代码示例


本文简要介绍 networkx.algorithms.dag.topological_generations 的用法。

用法:

topological_generations(G)

将 DAG 分层为几代。

拓扑代是节点集合,其中每一代节点的祖先都保证在上一代,并且节点的任何后代都保证在下一代。节点保证在它们可以属于的最早的一代中。

参数

GNetworkX 有向图

有向无环图 (DAG)

生成(Yield)

节点集

产生代表每一代的节点集。

抛出

NetworkXError

世代仅针对有向图定义。如果图 G 是无向的,则会引发 NetworkXError

NetworkXUnfeasible

如果 G 不是有向无环图 (DAG),则不存在拓扑生成,并引发 NetworkXUnfeasible 异常。如果在处理返回的迭代器时更改G,也会引发此问题

RuntimeError

如果在处理返回的迭代器时更改了 G

注意

也可以通过从节点到最远叶节点的max-path-distance来确定节点所在的世代。可以使用此函数使用 enumerate(topological_generations(G)) 获得该值。

例子

>>> DG = nx.DiGraph([(2, 1), (3, 1)])
>>> [sorted(generation) for generation in nx.topological_generations(DG)]
[[2, 3], [1]]

相关用法


注:本文由纯净天空筛选整理自networkx.org大神的英文原创作品 networkx.algorithms.dag.topological_generations。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。