【基本概念】

1.连通图与连通分量

1)连通图:无向图 G 中,若对任意两点,从顶点 Vi 到顶点 Vj 有路径,则称 Vi 和 Vj 是连通的,图 G 是一连通图

2)连通分量:无向图 G 的连通子图称为 G 的连通分量

任何连通图的连通分量只有一个,即其自身,而非连通的无向图有多个连通分量

以上图为例,总共有四个连通分量,分别是:ABCD、E、FG、HI。

2.强连通图与强连通分量

1)强连通图:有向图 G 中,若对任意两点,从顶点 Vi 到顶点 Vj,都存在从 Vi 到 Vj 以及从 Vj 到 Vi 的路径,则称 G 是强连通图

2)强连通分量:有向图 G 的强连通子图称为 G 的强连通分量

强连通图只有一个强连通分量,即其自身,非强连通的有向图有多个强连通分量。

以上图为例,总共有三个强连通分量,分别是:abe、fg、cdh

【算法】

  1. 并查集判断连通性:点击这里
  2. Floyd 计算传递闭包:点击这里
  3. Kosaraju 算法求强连通分量:点击这里
  4. Tarjan 求强连通分量:点击这里
  5. Tarjan 缩点:点击这里
  6. Tarjan 求割点与桥:点击这里
  7. Tarjan 求双连通分量:点击这里
  8. 有桥连通图加边变边双连通图:点击这里

【例题】

1.连通性判断

  1. 刻录光盘(信息学奥赛一本通-T1383)(Floyd 判断连通性):点击这里
  2. Wireless Network(POJ-2236)(并查集判断连通性):点击这里

2.传递闭包

  1. Cow Contest(POJ-3660 )(传递闭包):点击这里
  2. Ranking the Cows(POJ-3275 )(传递闭包):点击这里
  3. 珍珠(信息学奥赛一本通-T1384)(传递闭包):点击这里
  4. Dima and Bacteria(CF-400D)(传递闭包+并查集):点击这里

3.强连通分量

  1. 迷宫城堡(HDU-1269)(Tarjan):点击这里
  2. Proving Equivalences(HDU-2767)(缩点):点击这里
  3. Equivalent Sets(HDU-3836)(缩点):点击这里
  4. Islands(2017 ACM-ICPC 亚洲区(乌鲁木齐赛区)网络赛 F)(缩点):点击这里
  5. Strongly connected(HDU-4635)(有技巧的缩点):点击这里
  6. Network of Schools(POJ-1236)(Tarjan+缩点):点击这里
  7. The Cow Prom(POJ-3180)(Kosaraju+缩点):点击这里
  8. Hawk-and-Chicken(HDU-3639)(缩点+反向建图):点击这里

4.割点与桥

  1. Network(POJ-1144)(求割点):点击这里
  2. TWO NODES(HDU-4587)(求割点):点击这里
  3. Critical Links(LightOJ - 1026)(求桥):点击这里
  4. By Recognizing These Guys, We Find Social Networks Useful(HDU-3849)(求桥):点击这里
  5. Caocao's Bridges(HDU-4738)(重边无向图求桥):点击这里
  6. Street Directions(POJ-1515)(无向图求桥+单向边的划分):点击这里

5.双连通分量

  1. Financial Crisis(HDU-3749)(点双连通分量+并查集):点击这里
  2. Road Construction(POJ-3352)(加边变双连通图+缩点):点击这里
  3. Redundant Paths(POJ-3177)(加边变双连通图+缩点):点击这里

图论 —— 图的连通性相关推荐

  1. 图论 —— 图的连通性 —— 传递闭包

    [概述] 传递闭包:对于一个节点 i,如果 j 能到 i,i 能到 k,那么 j 就能到 k,求传递闭包,就是把图中所有满足这样传递性的节点计算出来,计算完成后,就知道任意两个节点之间是否相连. 简单 ...

  2. 图论 —— 图的连通性 —— Tarjan 求双连通分量

    [概念] 1.双连通分量:对于一个无向图,其边/点连通度大于1,满足任意两点之间,能通过两条或两条以上没有任何重复边的路到达的图,即删掉任意边/点后,图仍是连通的 2.分类: 1)点双连通图:点连通度 ...

  3. 图论 —— 图的连通性 —— Tarjan 求割点与桥

    [概念] 1.割点 1)割点:删除某点后,整个图变为不连通的两个部分的点 2)割点集合:在一个无向图中删除该集合中的所有点,能使原图变成互不相连的连通块的点的集合 3)点连通度:最小割点集合点数 如上 ...

  4. 图论 —— 图的连通性 —— Tarjan 缩点

    缩点常应用于给一个有向图,求在图中最少要加多少条边能使得该图变成一个强连通图 首先求出该图的各个强连通分量,然后把每个强连通分量看出一个点(即缩点),最后得到了一个有向无环图(DAG) 对于一个DAG ...

  5. 图论 —— 图的连通性 —— Tarjan 求强连通分量

    [概述] Tarjan 算法是基于对图深度优先搜索的算法,每个强连通分量为搜索树中的一棵子树. 搜索时,把当前搜索树中未处理的节点加入一个堆栈,回溯时可以判断栈顶到栈中的节点是否为一个强连通分量. [ ...

  6. 图论 —— 图的连通性 —— Kosaraju 算法

    [概述] Kosaraju 算法是最容易理解,最通用的求强连通分量的算法,其关键的部分是同时应用了原图 G 和反图 GT . [基本思想] 1.对原图 G 进行 DFS 搜索,计算出各顶点完成搜索的时 ...

  7. 图论 —— 图的连通性 —— 并查集判断连通性

    当需要判断图是否为连通图时,可以使用并查集来进行连通分量的统计,若连通分量大于 1,则说明图中存在多个连通分量,图不为连通图. int n,m; int father[N]; int Find(int ...

  8. 图论 —— 图的连通性 —— 有桥连通图加边变边双连通图

    对于一个有桥的连通图,加边变成边双连通图 1.求出所有的桥,然后删除这些桥边.剩下的每个连通块都是一个双连通子图. 2.把每个双连通子图收缩为一个顶点. 3.加回桥边,统计度为1的节点的个数(叶节点的 ...

  9. 电子科技大学《图论及其应用》复习总结--第三章 图的连通性

    第三章 图的连通性 一.割边.割点和块 (一).割边及其性质 定义1 边e为图G的一条割边,如果 w(G−e)>w(G)w(G-e)>w(G)w(G−e)>w(G) 定理1 边 e ...

最新文章

  1. AI设计师“鹿班”核心技术公开:如何1秒设计8000张海报?
  2. 操作系统(三十四)覆盖和交换
  3. mysql 按时间累计计算_精通MySQL索引背后的数据结构及算法原理
  4. CRM软件设计评测点与采集测评点
  5. 《黑客秘笈——渗透测试实用指南》—第2章2.3节 外部或内部的主动式信息收集...
  6. 【操作系统复习】进程控制
  7. khoury计算机科学学院,2021年美国东北大学计算机研究生专业有哪些?入学要求高吗?...
  8. 下一代Windows界面曝光!
  9. WordPress广告管理插件Adning Advertising1.5.8汉化版
  10. Docker学习总结(47)——温故Docker常用命令行
  11. sklearn学习5-----模型评估(1) 分类度量
  12. 空间配置器(allocator)
  13. 2020-12-10 PMP 群内练习题 - 光环
  14. Vue创建项目的详细步骤
  15. Ubuntu18.04安装PX4并与ROS联合实验
  16. 体脂率编程c语言,C语言程序
  17. Wagtail 教程 1 :基础设置
  18. Schema hasn't been registered for model 解决方案
  19. 国外计算机cpu排行,处理器天梯图2020 电脑cpu处理器性能排行榜
  20. 七剑下天山?七步搞定DB2查询优化!

热门文章

  1. 那两个告扎克伯格抄袭的斜杠青年,后来怎么样了?
  2. 马云:未来10年,人类将面临AI、IoT和区块链3大挑战!(视频+全文)
  3. qdialog 返回值_c – QDialog exec()并获取结果值
  4. lua游戏开发实践指南光盘_Godot游戏开发实践之三:容易被忽视的Resource
  5. 速领,我给大家做了程序员专属红包封面~
  6. 携程试点每周两天居家办公反响热烈,76%的员工主动报名
  7. 数据统计告诉你,程序员是不是35岁就退休
  8. 指引趋势和方向!2019开发者技能报告出炉!!
  9. 架构设计 | 高并发流量削峰,共享资源加锁机制
  10. 华为云TaurusDB性能挑战赛-java赛题mvn编译时报错:不支持multi-catch