【发布时间】:2012-08-21 12:11:40
【问题描述】:
假设networkx图中有一个如下树状结构:
n-----n1----n11
| |----n12
| |----n13
| |----n131
|----n2 |
| |-----n21 X
| |-----n22 |
| |----n221
|----n3
n4------n41
n5
- 如何列出所有带有“子节点”的节点及其深度,这里:n,n1,n13,n2,n22,n4
- 如何列出所有没有“子节点”的节点,这里:n11,n12,n21,n41,n5
- 如何列出孤立节点,此处:n5 以及如何列出“孤立”边,不属于根 n 边,此处为 n4-n41,
- 如何列出具有超过 2 个“子节点”的节点,此处为 n,n1
- 如果n131,n221在节点遍历中存在边,会出现无限循环怎么办?
谢谢。
【问题讨论】:
-
你应该看看 Graphs 的 networkX 文档:networkx.lanl.gov/reference/classes.graph.html#networkx.Graph 你的大部分任务都可以通过那里的功能和一些迭代来解决。
-
@Michael Mauderer,对于没有属性的节点这么简单吗?
-
属性不应该对你正在做的事情产生任何影响。
-
您应该给出一个图表的示例构造,以便我们可以帮助解决这些问题
标签: python graph traversal networkx