判断二分图的染色法

Posted Alan_Lin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了判断二分图的染色法相关的知识,希望对你有一定的参考价值。

用三种颜色染色,无色-0,黑色-1,白色-2。

满足DFS框架,很好用^.^

 1 #include<stdio.h>
 2 #include<string.h>
 3 int color[maxn];
 4 bool bipartite(int u){
 5     for(int i=0;i<G[u].size();i++)
 6     {
 7         int v=G[u][i];
 8         if(color[v]==0){
 9             color[v]=3-color[u];
10             if(!bipartite(v))
11                 return false;
12         }
13         else{
14             if(color[v]==color[u]){
15                 return false;
16             }
17         }
18     }
19     return true;
20 }

 

以上是关于判断二分图的染色法的主要内容,如果未能解决你的问题,请参考以下文章

图论二分图的应用(染色法判断二分图,最大匹配,最小点覆盖,最大独立集,最小路径点覆盖,最小路径重复点覆盖)

二分图算法手把手教你学会:染色法(判断二分图)匈牙利算法(二分图的最大匹配)

二分图的判定(染色法)和二分图最大匹配(匈牙利)算法及模板

二分图 and code1170 双栈排序

二分图判定

图论 —— 二分图的判定及最大匹配