本文共 783 字,大约阅读时间需要 2 分钟。
并查集:
/*力扣 547 朋友圈 并查集 c语言 2020/12/14 1:04 by ksks14*//*初始化 查找 合并*/#define maxsize 10000int flag[maxsize];//定义flag数组,用于并查集的查找 int find_root(int n){ //并查集的查找 if(n==flag[n]) return n; else return flag[n]=find_root(flag[n]);//递归查找(深度搜索),直到根 }int findCircleNum(int** M, int MSize, int* MColSize){ for(int i=0;i
深搜求连通分量:
/*力扣 547 朋友圈 c 2020/12/14 16:46 by ksks14*//*深度优先搜索,带标记数组*/#define maxsize 200void dfs(int **M,int MSize,int *flag,int line){ for(int col=0;col
广搜求连通分量:
/*力扣 547 朋友圈 c 2020/12/14 16:14 by ksks14*//*广搜求连通分量*//*这里有个问题,如果把count记为*/#define maxsize 500int findCircleNum(int** M, int MSize, int* MColSize){ int flag[maxsize]={ 0};//广搜的标记数组,标记被访问过的元素 int queue[maxsize]={ 0};//广搜的队列 int count=0;//用于记录连通分量 int front=0; int rear=0; for(int i=0;i
转载地址:http://wkcki.baihongyu.com/