P14140.【深度优先搜索2】联通块统计(邻接表存储)
题目描述
给定一张无向图,图中的每个节点用一个整数编号,且图通过邻接表存储。请你计算该图中有多少个连通块。我们定义一个连通块是一个图的最大子图,在这个子图中任意两个节点都有路径相连。换句话说,连通块是一个连通的无向图的部分,其中任意两个节点通过一系列边相互连接。
输入
第一行包含两个整数 n 和 m,表示图中有 n 个节点(编号为 1,2,…,n),m 条边。接下来的 m 行,每行包含两个整数 u 和 v,表示存在一条无向边连接节点 u 和节点 v。
输出
输出一个整数,表示图中的连通块数量。
输入样例
5 3
1 2
2 3
4 5
输出样例
2
数据范围
- 图中的节点数 n 满足 1≤n≤1000。
- 图中的边数 m 满足 0≤m≤2n(n−1)。
- 图中每条边连接的两个节点 u 和 v 满足 1≤u,v≤n,且 u=v。
- 图中可能包含自环和多重边,但这些不影响连通块的计算。
开通会员即可查看完整视频题解: 1.题目讲解 2.思路分析 3.逐行代码手写