数据结构
文章平均质量分 69
星琳之梦
这个作者很懒,什么都没留下…
展开
-
并查集例题【hdu1232畅通工程,九度1444,hdu5631枚举删除边】
并查集常用于求解连通量个数HDU1232畅通工程,给你城市间的连线,求还需要建立多少个线才可以全部联通ans=联通量总数-1#include #define maxn 1002int par[maxn],rank[maxn];void init(int x){ for(int i=0;i<x;i++){ rank[i]=0; par[i]=i; }原创 2016-04-25 09:23:26 · 339 阅读 · 0 评论 -
图
二分图染色#include #include using namespace std;#define maxn 102vectorG[maxn];int color[maxn]; //顶点i的颜色(-1或1) int V,E;//把顶点染成1或者-1bool dfs(int v,int c){ //顶点编号,颜色 color[v]=c; //把v染成颜原创 2016-04-27 13:54:54 · 270 阅读 · 0 评论 -
并查集(基本代码+poj1182食物链)
--------------------------------挑战编程部分-----------------------------------并查集:常用于查询元素a和元素b是否属于同一组合并元素a和元素b所在的组基本代码:【摘自挑战程序】int par[MAX_X]; //父亲int rank[MAX_X]; //树的高度//初始化 void原创 2016-04-25 08:10:48 · 351 阅读 · 0 评论 -
二分图【图搜索】
该博文主要结合挑战程序设计竞赛98页的讲解二分图判定,给一个图,有V个点和E个边,给每个顶点染色,相邻颜色不同,能否最多用两种颜色染色,没有重边喝自环用两种颜色,也就是染了一个点之后,相邻的点颜色也就确认了。从一个点出发,依次确定相邻顶点颜色,也就可以判断了。所以书中用到了dfs深度优先搜索实现伪代码如下:bfs(v,c){//对v染色c//原创 2016-05-02 09:42:03 · 362 阅读 · 0 评论