Так что я пытаюсь использовать другой подход к раскраске графа, в основном я назначаю случайные цвета узлам графа, и я хочу после назначения этих цветов проверить правильность окраски (нет другими словами, проходя через узлы и соответствующие цвета, и убедитесь, что соседние узлы не имеют такого цвета.
Вот что я сделал до сих пор:
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()
- список узлов и ребер графа