私はPythonの小さなコードをグラフの頂点に色付けし、使用された色の数を数えて、接続された2つの頂点が同じ色を持たないようにしようとしています。 これは私のコードで、何が間違っているのか分かりません。 それは宿題ではありません!Pythonによる頂点の色付け - Chromatic numbers X(G)
import networkx as nx
import matplotlib.pyplot as plt
G=nx.Graph()
colors = ['Red', 'Blue', 'Green', 'Yellow', 'Black','Pink','Orange','White','Gray','Purpul','Brown','Navy']
G.nodes = [1,2,3,4,5]
G.edges= [{1,5},{1,3},{1,2},{1,4},{4,5}]
colors_of_nodes={}
def coloring(node, color):
for neighbor in G.edges:
color_of_neighbor = colors_of_nodes(neighbor)
if color_of_neighbor == color:
return False
return True
def get_color_for_node(node):
for color in colors:
if coloring(node, color):
return color
def main():
for node in G.nodes:
colors_of_nodes[node] = get_color_for_node(node)
print colors_of_nodes
main()
この例の完全なソースコードはどこにありますか?開いていますか?事前に感謝 –