def add_extra_edges(g,number_of_edges):
number = 0
num_nodes = g.number_of_nodes()
nodes = g.nodes()
extra_edges = set()
while len(extra_edges) < number_of_edges:
u,v = np.random.randint(0,num_nodes,2)
u = nodes[u]
v = nodes[v]
if nx.has_path(g,u,v):
if (v,u) not in extra_edges:
extra_edges.add((v,u))
if nx.has_path(g,v,u):
if (u,v) not in extra_edges:
extra_edges.add((u,v))
extra_edges = list(extra_edges)
print("# extra edges added (path lenght unconstrainted): %d" % (len(extra_edges)))
return extra_edges
introduce_cycles_to_DAG.py 文件源码
python
阅读 24
收藏 0
点赞 0
评论 0
评论列表
文章目录