如何解决修剪没有到任何一组目标节点的路径的图节点
我有一个包含大量节点的 MultiDIGraph。如果您愿意,它具有带有许多“初始节点”的森林结构。我有一组我对计算感兴趣的目标节点。我想修剪没有任何目标路径的节点。
而且 - 我是网络初学者。
是否有函数或算法可以做到这一点?
我想我可以迭代地从目标开始并获取它们的前身并组合一个集合并继续这样做直到它稳定,然后丢弃除集合中的所有内容。但这似乎是一个常见的要求?
谢谢
解决方法
在有向图的特殊情况下,我认为有向无环图(DAG)可以轻松解决这个问题。如果您可以确保您的森林结构是 DAG,或者首先使用 nx.simple_cycles(G)
从图中删除循环边,那么您可以使用 ancestors(G,source)
返回所有在 G 中具有到源路径的节点。或者您如果您想以相反的方式检查,可以使用 descendants(G,source)
。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。