1、问题描述
给定无向连通图G=(V,E)和m种不同的颜色。用这些颜色为图G的各顶点着色,每个顶点着一种颜色。
是否有一种着色法使G中每条边的2个顶点着不同颜色。这个问题是图的m可着色判定问题。
输入:图的顶点的个数,颜色种类树m。输出顶点a与顶点b,表示a与b之间有一条边。
输出:打印所有方案,输出顶点Ai(1<=i<=n)的颜色种类编号,可着色的方案总数。
运行结果:
2、算法设计
本节讨论给定连通图G=(V,E)和m种颜色,如果该图不是m可着色,给出否定回答;若m可着色,找出所有不同着色方法。
约束条件:顶点k与已着色的相邻结点颜色不重复
下面根据回溯法的递归描述框架Backtrack设计图的m着色算法,用图的邻接矩阵a表示无向连通图G= (V,E)。若(i,j)属于图G=(V,E)的边集E,则a[i][j] = 1,否则a[i][j]=