博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
力扣 547. 朋友圈 c语言 三种解法 深搜 广搜 并查集。
阅读量:3968 次
发布时间:2019-05-24

本文共 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/

你可能感兴趣的文章
assert用法
查看>>
assert用法
查看>>
堆与栈有什么区别?
查看>>
堆与栈有什么区别?
查看>>
操作系统:进程/线程同步的方式和…
查看>>
操作系统:进程/线程同步的方式和…
查看>>
Makefile的编写
查看>>
Makefile的编写
查看>>
C语言常用算法
查看>>
Samba文件服务器的配置
查看>>
Linux文件查找命令find,xargs详述
查看>>
Linux文件查找命令find,xargs详述
查看>>
写给Linux内核新手-关于Linux内核…
查看>>
写给Linux内核新手-关于Linux内核…
查看>>
牛人比较全面的内核学习建议
查看>>
牛人比较全面的内核学习建议
查看>>
实战linux内核编译
查看>>
实战linux内核编译
查看>>
Linux USB驱动框架分析(一)
查看>>
Linux USB驱动框架分析(一)
查看>>