1. Job Roadmap
  2. Home
  3. Problem Set
  4. codenotelist
  5. Forum
  6. course
  7. Shore Share Sessions
  8. Record
  1. Login
  2. Sign Up
  3. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
    ZhContent TextSol video solution AI分析

【深度优先搜索2】联通块统计(邻接表存储)

图的深度优先遍历

深度优先遍历(DFS)是一种经典的图遍历算法。通过该算法,我们可以遍历一个图的所有节点,并将连通的节点标记为已访问。以下是 DFS 的基本实现:

// 定义访问标记数组
static boolean[] visited = new boolean[MAX];

P14140.【深度优先搜索2】联通块统计(邻接表存储)

    1000ms Tried: 178 Accepted: 80 Difficulty: 4
    算法与标签>DFS

题目描述

给定一张无向图,图中的每个节点用一个整数编号,且图通过邻接表存储。请你计算该图中有多少个连通块。我们定义一个连通块是一个图的最大子图,在这个子图中任意两个节点都有路径相连。换句话说,连通块是一个连通的无向图的部分,其中任意两个节点通过一系列边相互连接。

输入

第一行包含两个整数 nnn 和 mmm,表示图中有 nnn 个节点(编号为 1,2,…,n1, 2, \dots, n1,2,…,n),mmm 条边。接下来的 mmm 行,每行包含两个整数 uuu 和 vvv,表示存在一条无向边连接节点 uuu 和节点 vvv。

输出

输出一个整数,表示图中的连通块数量。

输入样例

5 3
1 2
2 3
4 5

输出样例

2

数据范围

  • 图中的节点数 nnn 满足 1≤n≤10001 \leq n \leq 10001≤n≤1000。
  • 图中的边数 mmm 满足 0≤m≤n(n−1)20 \leq m \leq \frac{n(n-1)}{2}0≤m≤2n(n−1)​。
  • 图中每条边连接的两个节点 uuu 和 vvv 满足 1≤u,v≤n1 \leq u, v \leq n1≤u,v≤n,且 u≠vu \neq vu=v。
  • 图中可能包含自环和多重边,但这些不影响连通块的计算。

开通会员即可查看完整视频题解: 1.题目讲解 2.思路分析 3.逐行代码手写

登录后即可使用 AI 分析。

模式
倒计时时长
:

最长 10 小时 59 分;应用后按此时长重新开始。

提示:点击提交记录在左侧题面区域查看详情
题库
AI分析设置
留空使用官方API Key,每天有次数限制(自定义API Key仅限会员和管理员使用,不限次数)
会员和管理员可切换模型;切到 Kimi/智谱/通义/豆包时需填写对应供应商 API Key
升级会员,可将运行与提交冷却时间缩短至 1 秒起

Status

  • Judging Queue
  • Service Status

Development

  • Open Source

Support

  • Help
  • Contact Us

About

  • About
  • Privacy
  • Terms of Service
  • Copyright Complaint
  1. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
  2. Legacy mode
  3. Theme
    1. Light
    2. Dark
  1. 京ICP备2025123107号-1
  2. Worker 2, 43ms
  3. Powered by Hydro v5.0.0-beta.18 Community
CLOSE


ScanQRCodePrompt

请使用微信扫描下方二维码完成注册

Forgot password or username?