问题
图的m着色问题。给定无向连通图G和m种颜色,用这些颜色给图的顶点着色,每个顶点一种颜色。如果要求G的每条边的两个顶点着不同颜色。给出所有可能的着色方案;如果不存在,则回答“NO”。
解析
设G有n个顶点,将顶点编号为1,2,…,n,则搜索空间为深度n的m叉完全树,将颜色编号为1,2,…,m,结点<x1,x2,…xk>(x1,x2,…xk∈{1,…,m},1≤k≤n)表示顶点1的颜色x1,顶点2的颜色x2,…,顶点k的颜色xk。
设计
分析
最坏时间复杂度:O(n·m^n)
源码
Github