python – 使用networkX的子树
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python – 使用networkX的子树,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含603字,纯文字阅读大概需要1分钟。
内容图文
![python – 使用networkX的子树](/upload/InfoBanner/zyjiaocheng/748/2e5dd4cf7f9543d0949102ed75809525.jpg)
在networkX中,我有一棵树作为DiGraph().
#!/usr/bin/python
# -*- coding: utf-8 -*-
import networkx as nx
t = nx.DiGraph()
t.add_edge(1,'r')
t.add_edge(2,'r')
t.add_edge(3,'r')
t.add_edge(4,2)
t.add_edge(5,2)
t.add_edge(6,5)
print t.edges()
如果采取树的节点2.
我怎么能得到2的子树?
编辑
我期待这个子树
[(4,2),(5,2),(6,5)]
解决方法:
如果你的意思是以节点2为根的子树,那就是
from networkx.algorithms.traversal.depth_first_search import dfs_tree
subtree_at_2 = dfs_tree(t, 2)
编辑:似乎你已经颠倒了边缘中节点的顺序.在有向树中,所有路径都从根到叶,而不是相反. dfs_tree(t.reverse(),2)为您提供了所需的树,但确实更改了您的代码.
内容总结
以上是互联网集市为您收集整理的python – 使用networkX的子树全部内容,希望文章能够帮你解决python – 使用networkX的子树所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。