擅长:python、mysql、java
<p>下面的代码允许子图也有不同数量的节点。它利用了<code>nx.bipartite_random_graph</code>,它有一个特别有效的实现:O(V+E),其中V是顶点数,E是边数。实现二部随机图的标准方法是O(N*M),其中这些是每个分区中的节点数。它使用了<code>fast_gnp_random_graph</code>作为O(V+E)而不是O(v2)的相同技巧。在</p>
<pre><code>Nr= N
Nb = N
red_graph = nx.fast_gnp_random_graph(Nr, p1)
blue_graph = nx.fast_gnp_random_graph(Nb, p2)
main_graph = nx.bipartite_random_graph(Nr, Nb, q)
main_graph.add_edges_from(red_graph.edges_iter())
main_graph.add_edges_from(((Nr+x,Nr+y) for x,y in blue_graph.edges_iter()))
</code></pre>