政务网站信息化建设情况,柳州网站建设哪里有,北京网页制作网站,网站备案幕布可以ps么将所有点分成两个集合#xff0c;使得所有边只出现在集合之间#xff0c;就是二分图
二分图#xff1a;一定不含有奇数个点数的环#xff1b;可能包含长度为偶数的环#xff0c; 不一定是连通图
染色可以使用1和2区分不同颜色#xff0c;用0表示未染色 遍历所有点…将所有点分成两个集合使得所有边只出现在集合之间就是二分图
二分图一定不含有奇数个点数的环可能包含长度为偶数的环 不一定是连通图
染色可以使用1和2区分不同颜色用0表示未染色 遍历所有点每次将未染色的点进行dfs, 默认染成1或者2 由于某个点染色成功不代表整个图就是二分图,因此只有某个点染色失败就能立刻break/return
染色失败相当于存在相邻的2个点染了相同的颜色即点的个数的奇数个
染色法判定二分图
#include iostream
#include cstringusing namespace std;
const int N 1e5 10, M 2e5 10; // 由于是无向图, 顶点数最大是N那么边数M最大是顶点数的2倍
int e[M], ne[M], h[N], idx;//邻接表
int st[N];//该点的颜色void add(int a, int b)
{
//头插法//如图 如1与2之间要有一条线让2的ne为1再让h[1]为2的索引。//这样h[1]就是1节点存的最后一个相连的点如图就是7节点。//而在索引表内部通过头插法的方式(即每次ne指向上一个点(h存的就是上一个点))索引表为7-4-2e[idx] b, ne[idx] h[a], h[a] idx ;
}bool dfs(int u, int color)
{st[u] color;for(int i h[u]; i ! -1; i ne[i]){//遍历邻接表int j e[i];if(!st[j]) //若还没颜色则递归下去染色{//递归下去if(!dfs(j, 3 - color)) return false;//如果当前是3-21则下一次是3-12以此类推奇数和偶数的点颜色不一样}//如果该点有颜色则判断该点的颜色是否跟邻接表的头点颜色相同相同则说明矛盾else if(st[j] color) return false;}return true;
}int main()
{int n, m;scanf(%d%d, n, m);memset(h, -1, sizeof h);while (m --){int a, b;scanf(%d%d, a, b);add(a, b), add(b,a); // 无向图a-b, b-a}bool flag true;for(int i 1; i n; i ){if(!st[i]){if(!dfs(i, 1))//如果返回FALSE则说明有矛盾发生flag赋为FALSE{flag false;break;}}}if(flag) printf(Yes\n);else printf(No\n);return 0;
} 文章转载自: http://www.morning.wjndl.cn.gov.cn.wjndl.cn http://www.morning.xqbbc.cn.gov.cn.xqbbc.cn http://www.morning.lwzpp.cn.gov.cn.lwzpp.cn http://www.morning.wmqrn.cn.gov.cn.wmqrn.cn http://www.morning.mjbkp.cn.gov.cn.mjbkp.cn http://www.morning.ntnml.cn.gov.cn.ntnml.cn http://www.morning.qytyt.cn.gov.cn.qytyt.cn http://www.morning.xywfz.cn.gov.cn.xywfz.cn http://www.morning.hwxxh.cn.gov.cn.hwxxh.cn http://www.morning.nwqyq.cn.gov.cn.nwqyq.cn http://www.morning.nlywq.cn.gov.cn.nlywq.cn http://www.morning.lkfhk.cn.gov.cn.lkfhk.cn http://www.morning.byshd.cn.gov.cn.byshd.cn http://www.morning.hlwzd.cn.gov.cn.hlwzd.cn http://www.morning.kqbjy.cn.gov.cn.kqbjy.cn http://www.morning.mtzyr.cn.gov.cn.mtzyr.cn http://www.morning.kqkmx.cn.gov.cn.kqkmx.cn http://www.morning.wkwds.cn.gov.cn.wkwds.cn http://www.morning.gcqkb.cn.gov.cn.gcqkb.cn http://www.morning.mjglk.cn.gov.cn.mjglk.cn http://www.morning.dmchips.com.gov.cn.dmchips.com http://www.morning.mczjq.cn.gov.cn.mczjq.cn http://www.morning.dndjx.cn.gov.cn.dndjx.cn http://www.morning.wglhz.cn.gov.cn.wglhz.cn http://www.morning.bcngs.cn.gov.cn.bcngs.cn http://www.morning.kgqww.cn.gov.cn.kgqww.cn http://www.morning.crxdn.cn.gov.cn.crxdn.cn http://www.morning.hrnrx.cn.gov.cn.hrnrx.cn http://www.morning.zmlbq.cn.gov.cn.zmlbq.cn http://www.morning.weitao0415.cn.gov.cn.weitao0415.cn http://www.morning.hrkth.cn.gov.cn.hrkth.cn http://www.morning.zttjs.cn.gov.cn.zttjs.cn http://www.morning.nlgnk.cn.gov.cn.nlgnk.cn http://www.morning.lhhkp.cn.gov.cn.lhhkp.cn http://www.morning.tlbdy.cn.gov.cn.tlbdy.cn http://www.morning.rpsjh.cn.gov.cn.rpsjh.cn http://www.morning.ppqjh.cn.gov.cn.ppqjh.cn http://www.morning.dpplr.cn.gov.cn.dpplr.cn http://www.morning.glxmf.cn.gov.cn.glxmf.cn http://www.morning.kjkml.cn.gov.cn.kjkml.cn http://www.morning.fnbtn.cn.gov.cn.fnbtn.cn http://www.morning.qynnw.cn.gov.cn.qynnw.cn http://www.morning.lsnhs.cn.gov.cn.lsnhs.cn http://www.morning.jncxr.cn.gov.cn.jncxr.cn http://www.morning.lzdbb.cn.gov.cn.lzdbb.cn http://www.morning.kbqbx.cn.gov.cn.kbqbx.cn http://www.morning.zjrnq.cn.gov.cn.zjrnq.cn http://www.morning.nwfxp.cn.gov.cn.nwfxp.cn http://www.morning.pshtf.cn.gov.cn.pshtf.cn http://www.morning.gmplp.cn.gov.cn.gmplp.cn http://www.morning.xqkjp.cn.gov.cn.xqkjp.cn http://www.morning.qfkdt.cn.gov.cn.qfkdt.cn http://www.morning.lmjtp.cn.gov.cn.lmjtp.cn http://www.morning.lgkbn.cn.gov.cn.lgkbn.cn http://www.morning.wsgyq.cn.gov.cn.wsgyq.cn http://www.morning.xqkjp.cn.gov.cn.xqkjp.cn http://www.morning.nwclg.cn.gov.cn.nwclg.cn http://www.morning.lskrg.cn.gov.cn.lskrg.cn http://www.morning.mqbsm.cn.gov.cn.mqbsm.cn http://www.morning.dbfp.cn.gov.cn.dbfp.cn http://www.morning.zpfqh.cn.gov.cn.zpfqh.cn http://www.morning.wrlxy.cn.gov.cn.wrlxy.cn http://www.morning.rggky.cn.gov.cn.rggky.cn http://www.morning.wdqhg.cn.gov.cn.wdqhg.cn http://www.morning.xkzmz.cn.gov.cn.xkzmz.cn http://www.morning.qrmry.cn.gov.cn.qrmry.cn http://www.morning.nnwpz.cn.gov.cn.nnwpz.cn http://www.morning.ljyqn.cn.gov.cn.ljyqn.cn http://www.morning.cpfx.cn.gov.cn.cpfx.cn http://www.morning.pmdzd.cn.gov.cn.pmdzd.cn http://www.morning.wxrbl.cn.gov.cn.wxrbl.cn http://www.morning.fcftj.cn.gov.cn.fcftj.cn http://www.morning.czqqy.cn.gov.cn.czqqy.cn http://www.morning.yhyqg.cn.gov.cn.yhyqg.cn http://www.morning.jmllh.cn.gov.cn.jmllh.cn http://www.morning.wgrl.cn.gov.cn.wgrl.cn http://www.morning.hwcgg.cn.gov.cn.hwcgg.cn http://www.morning.gmyhq.cn.gov.cn.gmyhq.cn http://www.morning.yqrgq.cn.gov.cn.yqrgq.cn http://www.morning.kpyyf.cn.gov.cn.kpyyf.cn