我想使用igraph c ++创建一个有向网络图,其中每个节点随机连接到网络中的其他n个不同节点(即排除与自身的连接,以及循环/多个边到同一个循环)。我正在考虑使用方法igraph_erdos_renyi_game
,但由于某种原因,我没有获得所需的学位分布。特别是,如果我设置这样的参数:
igraph_erdos_renyi_game(&g, IGRAPH_ERDOS_RENYI_GNM, n, m, true, false);
当n = 5,m = 1时,我得到这个邻接矩阵(例如):
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
1 0 0 0 0
0 0 0 0 0
如果我改用igraph_k_regular_game(&g, n, m, true, false)
,我会得到完全理想的结果,即(例如):
0 0 0 0 1
1 0 0 0 0
0 0 0 0 1
0 1 0 0 0
0 0 0 1 0
总而言之,我希望每个节点都有1个边到n个随机选择的代理。我误解了鄂尔多斯 - 仁义方法的运作方式,还是我传递了错误的论点?
答案 0 :(得分:0)
m
是边in erdos_renyi_game()
的总数。所以只需使用k_regular_game()
,就可以完全按照自己的意愿使用。