当前位置: 首页 > news >正文

列出连通集

在这里插入图片描述

输入样例:

8 6
0 7
0 1
2 0
4 1
2 4
3 5

输出样例:

{ 0 1 4 2 7 }
{ 3 5 }
{ 6 }
{ 0 1 2 7 4 }
{ 3 5 }
{ 6 }

solution

#include <stdio.h>
#include <string.h>
int arcs[10][10];
int visited[10] = {0};
void DFS(int n, int v);
void BFS(int n , int i);
int main(){int n, e, v1, v2;memset(arcs, 0, sizeof(arcs));scanf("%d%d", &n, &e);for(int i = 0; i < e; i++){scanf("%d%d", &v1, &v2);arcs[v1][v2] = arcs[v2][v1] = 1;}for(int i = 0; i < n; i++){if(!visited[i]){printf("{");DFS(n, i);printf(" }\n");}}memset(visited, 0, sizeof(visited));for(int i = 0; i < n; i++){if(!visited[i]){printf("{");BFS(n, i);printf(" }\n");}}return 0;
}void DFS(int n, int v){printf(" %d", v);visited[v] = 1;for(int i = 0; i < n; i++){if(arcs[v][i] && !visited[i] )DFS(n, i);}
}void BFS(int n , int i){int q[n], rear = 0, front = 0; printf(" %d", i);visited[i] = 1;q[rear++] = i;while(rear != front){int t = q[front++];for(int j = 0; j < n; j++){if(!visited[j] && arcs[t][j]){printf(" %d", j);visited[j] = 1;q[rear++] = j;}}}
}
http://www.lryc.cn/news/182880.html

相关文章:

  • 前端 富文本编辑器原理——从javascript、html、css开始入门
  • 堆--数据流中第K大元素
  • 【算法|动态规划No.12】leetcode152. 乘积最大子数组
  • Covert Communication 与选择波束(毫米波,大规模MIMO,可重构全息表面)
  • 计算机毕业设计 基于协调过滤算法的绿色食品推荐系统的设计与实现 Java实战项目 附源码+文档+视频讲解
  • 华为云云耀云服务器L实例评测|部署在线影音媒体系统 Jellyfin
  • GhostNet原理解析及pytorch实现
  • 视频二维码的制作方法,支持内容修改编辑
  • 清华GLM部署记录
  • 贪心算法+练习
  • 使用华为eNSP组网试验⑷-OSPF多区域组网
  • P1843 奶牛晒衣服 【贪心】
  • 91、Redis - 事务 与 订阅-发布 相关的命令 及 演示
  • GPU如何成为AI的加速器
  • Map声明、元素访问及遍历、⼯⼚模式、实现 Set - GO语言从入门到实战
  • 机器人中的数值优化|【七】线性搜索牛顿共轭梯度法、可信域牛顿共轭梯度法
  • websocket实现go(server)与c#(client)通讯
  • 洛谷题目题解详细解答
  • 【C语言】八大排序算法
  • 2023年中国智能电视柜产量、需求量、市场规模及行业价格走势[图]
  • docker容器使用初体验
  • React Hooks ——性能优化Hooks
  • C#学习系列相关之多线程(一)----常用多线程方法总结
  • Vscode爆红Delete `␍`eslintprettier/prettier
  • Mac安装Ecplise产品报错:dose not contain the JNI_CreateJavaVM symbol
  • 如何使用大语言模型来绘制图画
  • 代码随想录算法训练营第23期day11 | 20. 有效的括号、1047. 删除字符串中的所有相邻重复项 、150. 逆波兰表达式求值
  • 数据结构-优先级队列(堆)
  • C++11新特性(语法糖,新容器)
  • 开机可用内存分析Tip