我想在python中寫一個小代碼來彩色圖頂點,並計算使用的顏色數,因此沒有兩個連接的頂點具有相同的顏色。 這是我的代碼,我不知道它有什麼問題,有什麼幫助嗎? 這不是功課!頂點着色由python-色數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()
在哪裏可以找到這個例子的完整源代碼,它是否打開?在此先感謝 – 2016-03-30 16:56:32