2017-09-01 113 views
-1

假设我有一个nx.Graph对象g,它有两个或多个周期。如果我拨打nx.find_cycle,输出总是一样的。我想知道是否有一种内置的方式来随机化输出,比如通过访问NetworkX内部随机状态。 find_cycles函数只是一个例子,我对随机化其他NetworkX函数的输出也很感兴趣。随机化NetworkX输出

回答

1

find_cycle开始在任意节点搜索循环,并返回找到的第一个循环。 find_cycle采用source参数,该参数告诉算法应该从哪个节点开始。因此,为了随机化输出,您可以简单地随机化源节点。

import random 

s = random.choice(G.nodes()) 
cycle = find_cycle(G, source = s)