`
阿尔萨斯
  • 浏览: 4217709 次
社区版块
存档分类
最新评论

二分图判定

 
阅读更多

二分图判定

二分图又称作二部图,是图论中的一种特殊模型。 设G=(V,E)是一个无向图,如果顶点V可分割为两个互不相交的子集(A,B),并且图中的每条边(i,j)所关联的两个顶点i和j分别属于这两个不同的顶点集(i in A,j in B),则称图G为一个二分图。

二分图的另一种等价的说法是,可以把每个节点着以黑色和白色之一,使得每条边的两个端点颜色不同.不难发现,非连通的图是二分图当且仅当每个连通分量都是二分图,因此我们只考虑无向连通图.

(以上概念参考刘汝佳 训练指南P311)

具体代码如下:

int color[maxn];
//0表示颜色未设定,1表白色,2表黑色
bool bipartite(int u)//调用u之前,u的颜色已经设定
{
    for(int i=0;i<G[u].size();i++)
    {
        int v=G[u][i];
        if(color[v] == color[u]) return false;//冲突
        if(!color[v])
        {
            color[v]= 3-color[u];
            if(!bipartite(v)) return false;
        }
    }
    return true;
}

分享到:
评论

相关推荐

    二分图判定算法(邻接矩阵广度遍历)

    for (j = 1; j ; j++) { if (Pub.color[j] == -1) Pub.color[j] = 0; for (i = 1; i ; i++) { if (Pub.graphs[j, i] == 1) { if (Pub.color[i] == -1) { Pub.color[i] = 1 - Pub.color[j];...

    图论- 二分图- 二分图判定.rar

    图论- 二分图- 二分图判定.rar

    二分图判定的源程序(C#)

    图论课的一个补充题…… 特点:界面友好,功能简单

    二分图判断【染色法】

    怎么判定一个图是否为二分图 ? 从其中一个定点开始,将跟它邻接的点染成与其不同的颜色,最后如果邻接的点有相同颜色,则说明不是二分图,每次用bfs遍历即可。

    CCF中学生计算机程序设计提高篇(完整版)

    CCF中学生计算机程序设计提高篇(完整版) 第1章树及其应用 1.1 树的相关概念及其性质......5.1 二分图的判定 5.2 二分图的匹配 5.3 二分图的最大匹配 5.4 二分图的最佳匹配....... 5.5 二分图的应用 本章小结 …………

    判断一个连通无向图是否为二部图

    判断一个连通无向图是否为二部图 方法: 利用两个集合存放两个不相交的子集 利用BFS来遍历图 在vc++环境下实现

    线性规划与网络流题解

    1 飞行员配对方案问题 二分图最大匹配 网络最大流 2 太空飞行计划问题 最大权闭合图 网络最小割 3 最小路径覆盖问题 有向无环图最小路径覆盖 网络最大流 4 魔术球问题 有向无环图最小路径覆盖 网络最大流 5 圆桌问题...

    ACM竞赛代码整理 v0.6.pdf

    带权二分图最大匹配14 最小路径覆盖15 稳定婚姻问题15 拓扑排序16 LCA 最近公共祖先(TARJAN) 16 最大流17 最小费用最大流18 求割点和桥19 无向图的块20 极大双连通分量21 极大强连通分量22 极大强连通分量缩点23 2...

    ACM常用模板总结ACM常用模板总结

    二分图最大匹配(hungary邻接表形式,邻接阵接口) 二分图最大匹配(hungary正向表形式) 二分图最佳匹配(kuhn_munkras邻接阵形式) 一般图最大匹配(邻接表形式) 一般图最大匹配(邻接阵形式) 一般图最大匹配(正向表...

    浙大算法包,几何 结构\数论\数值计算\图论_NP搜索\图论_连通性\图论_匹配\组合\

    二分图最大匹配(hungary邻接表形式,邻接阵接口) 二分图最大匹配(hungary正向表形式) 二分图最佳匹配(kuhn_munkras邻接阵形式) 一般图最大匹配(邻接表形式) 一般图最大匹配(邻接阵形式) 一般图最大匹配(正向表...

    ACM算法模板集锦(几何,结构,其他,数论,数值计算,图论)

    二分图最大匹配(hungary邻接表形式,邻接阵接口) 二分图最大匹配(hungary正向表形式) 二分图最佳匹配(kuhn_munkras邻接阵形式) 一般图最大匹配(邻接表形式) 一般图最大匹配(邻接阵形式) 一般图最大匹配(正向表...

    ACM算法模板和pku代码

    二分图最大匹配 匈牙利算法 二分图最大匹配 HK算法 二分图最大权匹配 KM算法 割边 强连通分量 缩点 Kosaraju算法 最大团 最小树形图 无向图全局最小割 stoer-wagner O(n^3) 最短路径优先算法 SPFA 网络流 ...

    kuangbin的ACM模板.pdf

    1.1.1.2 二分图匹配 1.1.1.3 上下界可行流 1.1.1.4 多源汇最大流 1.1.1.5 关键边 1.1.1.6 最大流判定 1.1.1.7 拆点 1.1.1.8 建图实战 1.1.2 最小割 1.1.2.1 算法模板 1.1.2.2 直接应用 1.1.2.3 最大权闭合图 1.1.2.4...

    ACM经典、常用代码

    2. 二分图最大匹配(hungary邻接表形式,邻接阵接口) 3. 二分图最大匹配(hungary邻接阵形式) 4. 二分图最大匹配(hungary正向表形式) 5. 二分图最佳匹配(kuhn_munkras邻接阵形式) 6. 一般图匹配(邻接表形式) 7. ...

    ACM常用算法代码 pdf

    2. 二分图最大匹配(hungary邻接表形式,邻接阵接口) 10 3. 二分图最大匹配(hungary邻接阵形式) 10 4. 二分图最大匹配(hungary正向表形式) 11 5. 二分图最佳匹配(kuhn_munkras邻接阵形式) 11 6. 一般图匹配(邻接表形式...

    非常经典的acm程序代码

    2. 二分图最大匹配(hungary邻接表形式,邻接阵接口) 10 3. 二分图最大匹配(hungary邻接阵形式) 10 4. 二分图最大匹配(hungary正向表形式) 11 5. 二分图最佳匹配(kuhn_munkras邻接阵形式) 11 6. 一般图匹配(邻接表...

    ACM经典算法及例子

    2. 二分图最大匹配(hungary邻接表形式,邻接阵接口) 10 3. 二分图最大匹配(hungary邻接阵形式) 10 4. 二分图最大匹配(hungary正向表形式) 11 5. 二分图最佳匹配(kuhn_munkras邻接阵形式) 11 6. 一般图匹配(邻接表形式...

    ACM算法模版大集合

    一般图问题与二分图问题的转换思路 最大匹配(OK) 有向图的最小路径覆盖 0 / 1矩阵的最小覆盖 完备匹配(OK) 最优匹配(OK) 稳定婚姻 网络流问题 网络流模型的简单特征和与线性规划的关系 最大流最小...

    ACM 算法经典代码 数据结构经典代码

    2. 二分图最大匹配(hungary邻接表形式,邻接阵接口) 10 3. 二分图最大匹配(hungary邻接阵形式) 10 4. 二分图最大匹配(hungary正向表形式) 11 5. 二分图最佳匹配(kuhn_munkras邻接阵形式) 11 6. 一般图匹配(邻接表形式...

Global site tag (gtag.js) - Google Analytics