微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

给定总节点数和每个节点的度数,是否可以构建一个图?

如何解决给定总节点数和每个节点的度数,是否可以构建一个图?

以立方体为例,有8个节点和12条边,每个节点连接3个节点。 >

使用networkx,我必须手动输入所有边。例如,下面的代码是构造一个包含一个二十面体的所有边(12个节点,30个边,每个节点有5个相邻节点)的图。

import networkx as nx
G = nx.Graph()
nodes = list(range(12))
edges = [
    [0,1],[0,2],3],4],5],[1,6],10],[2,7],[3,8],[4,11],[5,[6,9],[7,[8,[9,[10,]
G.add_nodes_from(nodes)
G.add_edges_from(edges)

我的问题是如何在不手动编写的情况下获得所有可能的边。每个节点的名称都可以随机初始化。

据我所知,igraph 中的 Erdős–Rényi 模型无法约束相邻节点。

from igraph import *

g = Graph.Erdos_Renyi(12,m=30,directed=False)
g.get_edgelist()
"""
[(0,1),(0,2),(1,3),(2,4),(3,5),(4,6),(5,7),(6,8),9),10),node10 has more than 5 edges.
 (2,(7,(8,11),(9,11)]
"""

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。