python - 如果两个节点断开连接,如何连接它们
问题描述
我使用 python NetworkX 图。如何检查 2 个节点是否断开连接,然后获取连接这 2 个节点的图形的新版本。
2个图之间的差异应该有最小编辑距离(Levenshtein距离)
之前和之后nodes=[1,2]
:
解决方案
import networkx as nx
G = nx.DiGraph([(1, 1), (2, 3), (4, 3)])
def check_edge(source, target):
if not G.has_edge(source, target):
print('adding edge between {} and {}'.format(source, target))
G.add_edge(source, target)
else:
print('edge exists between {} and {}'.format(source, target))
check_edge(1, 2)
# adding edge between 1 and 2
check_edge(1, 2)
# edge exists between 1 and 2
您还可以有一个条件来检查任一方向的边缘:
if not G.has_edge(source, target) and not G.has_edge(target, source):
推荐阅读
- python - 为什么在它自己的构造函数中调用 super.__init__() 并且这是某种类型的递归?
- apache-kafka - Kafka Mirrormaker 和记录编码
- javascript - 如何在 Promise 函数中抛出不同的错误?
- keras - 使用 Keras 和 TF2.0 的 Eager vs 图形模式
- html - 如何启用按音节自动断字?
- speech-recognition - 如何在 Mozilla DeepSpeech 中将成绩单保存到文本文件中?
- node.js - 使用 set 仅更新 Firestore 事务中的一部分写入属性
- android - 在 ViewPager2 android 中检测过度滚动或页面结束事件
- azure - Azure ARM 模板部署:授权问题
- c# - 将整数转换为罗马数字的控制器方法