【发布时间】:2019-01-20 13:52:53
【问题描述】:
所以我正在尝试一种不同的图形着色方法,我所做的基本上是为图形的节点随机分配颜色,我想要做的是,在分配这些颜色后,检查该着色是否正确(否相邻节点具有相同的颜色)换句话说,遍历节点及其各自的颜色并确保没有相邻节点具有相同的颜色。
这是我到目前为止所做的:
def approx_color(graph):
colors = [1,2,3,4,5,6,7,8,9]
xr = random.randint(0, len(graph.nodes))
s_c = []
for i in range(len(graph.nodes)):
s_c.append(random.choice(colors))
colored = dict(zip(graph.nodes,s_c))
print(colored)
编辑:
“graph”变量是networkx库生成的图,graph.nodes()graph.edges()是图的节点和边的列表
【问题讨论】:
-
这个问题不清楚。
graph变量是什么?你想“检查”是什么意思? “着色正确”是什么意思?请查看stackoverflow.com/help/how-to-ask 和stackoverflow.com/help/mcve。这些页面可以帮助您更好地提出问题。 -
我编辑了我的帖子,我希望现在一切都清楚了。
-
酷,现在很清楚你在问什么 :) 但是,仍然不清楚你的问题出在哪里。现在您需要再次遍历节点并将它们与相邻节点进行比较。
标签: python graph networkx approximation graph-coloring