首页 > 其他分享 >知识点整理 - 连通性相关 | 《综述图论中连通性及相关问题的一些处理方法》学习笔记

知识点整理 - 连通性相关 | 《综述图论中连通性及相关问题的一些处理方法》学习笔记

时间:2024-05-30 22:23:32浏览次数:21  
标签:知识点 图论 连通性 边双 路径 连通 rightsquigarrow 点双

是 ix35 老师论文的学习笔记,同时也用作连通性相关知识梳理。

可能不会包含很多定义,只会挑重要的写。会包含一些例题。

定义与记号

\(u \rightsquigarrow v\) 代表 \(u\) 到 \(v\) 的一条路径。有时也会用这个记号表示连通性。

无向图

  • 点/边连通度:若 \(u, v\) 任意点割集大小不小于 \(s\),则称 \(u, v\) 是 s-点连通的,同理定义 t-边连通。\(u, v\) 的点/边连通度是上述 \(s, t\) 的最小值。图 \(G\) 的点/边连通度为所有点对间点/边连通度的最小值。

  • Menger 定理:对于任意 \(u \neq v\),其是 k-边连通的,当且仅当存在 \(k\) 条 \(u \rightsquigarrow v\) 的边不交路径。点连通同理。

Menger 定理可以用最大流最小割定理证明。注意在定理中并没有要求路径不同,例如一张 \(2\) 个点的完全图对于任意 \(k\) 都有 k-点连通。

双连通性

即上述定义中的 2-连通性。

边双连通

边双连通性是点集 \(V\) 上的一种等价关系,也就是说,你可以根据边双连通性对 \(V\) 进行划分(实际上就是能把图划分成若干边双连通块),因此边双连通性会比点双连通性容易考虑。

注意到在 tarjan 算法的过程中满足 \(dfn_u = low_u\) 的点 \(u\) 是一个边双连通块的最浅点,并且其 dfs 树子树内还未被删除的点就构成一个边双连通分量,因此可以在 \(O(n + m)\) 的时间内求出所有边双连通分量。

注意将边双缩点后图会形成一棵树。可以利用此性质解决边双相关问题。

点双连通

点双连通并不不是 \(V\) 上的等价关系,因此考虑起来没有边双那么容易。

可以使用 tarjan 算法求出图的所有点双连通分量。

点双连通的一些性质:

  • 对于 \(u \neq v\),存在经过 \(u, v\) 的简单环。
    这是 Menger 定理的直接推论。因为存在两条除端点外不相交的路径。

  • 对于任意一点 \(u\) 和任意一边 \(e\),存在经过 \(u, e\) 的简单环。对于 \(e_1 \neq e_2\),存在经过 \(e_1, e_2\) 的简单环。
    将边 \(x \rightarrow y\) 拆成 \(x \rightarrow z \rightarrow y\),然后用上条性质证明即可。

  • 对于 \(u \neq v\) 和 \(e\),存在经过 \(e\) 的简单路径 \(x \rightsquigarrow y\)。
    根据上条性质,选择一个包含 \(u, e\) 的环 \(C\),尝试找到一条 \(y \rightsquigarrow x\) 的路径 \(P\),满足 \(P, C\) 的交集大于 \(1\)。注意 \(x\) 显然在交集中,若找不到这样的 \(P\),说明 \(y\) 无法通过非 \(x\) 的点走到 \(C\) 上的点,那么 \(x\) 是割点,矛盾。设 \(P, C\) 交集中最靠近 \(y\) 的点为 \(u\),那么选择 \(x \rightsquigarrow u\) 并包含 \(e\) 的路径和 \(u \rightsquigarrow y\) 拼起来就行。

  • 共环:对于 \(e_1, e_2\),若存在一个简单环同时包含 \(e_1, e_2\),则称它们是共环的。注意到其实共环是一种对于边的等价关系,点双连通性实际上相当于一种对边集的划分。

耳分解

双极定向

标签:知识点,图论,连通性,边双,路径,连通,rightsquigarrow,点双
From: https://www.cnblogs.com/LiMLE/p/18223299

相关文章

  • 图论-最近公共祖先
    例题:祖孙询问 给定一棵包含 n......
  • 认识Excel和Excel的一些知识点
    认识Excel:Excel是一款功能强大的电子表格软件,广泛应用于数据分析、数据处理、图表制作等工作中。本文将介绍Excel的基础知识,包括单元格、工作表、函数、筛选和排序等内容。我们来了解一下Excel中的单元格。单元格是Excel中最基本的单位,由列字母和行数字组成,例如A1、B2等。每......
  • css小知识点
    canvas知识点总结:判断画笔是否存在conntctx=canvas.getContext("2d")画矩形,方式一api画方式二路径rect(x,y,w,h)fill()//样式fillStyle("red")//实心填充strokeStyle("#ccc")//空心lineCap="butt"//线端lineWidth=10//线宽fillRect(x,y,w,h)stroke......
  • JS小知识点
    js是单线程的所有的同步任务都是按顺序依次执行的,前面的执行完了之后才会执行后面的任务../上级目录./当前文件夹目录说出==和===的区别普通相等:==在比较类型不相同的情况下,会将运算元先转成Number的值,再进行比较(即会进行隐式转换)严格不等:===在进行比......
  • Linux常考知识点——(二)
    #Linux第二章1.   Linux 惟独被授权的用户才可以使用系统命令。2.    Linux系统提供的命令需要在shell环境下运行。3.    使用bash命令时,应注意以下7点:(1)    命令名必须是小写英文字母。(2)    方括号里面的部份是可选的。(3)    选......
  • P9 【力扣+知识点】【算法】【二分查找】C++版
    【704】二分查找(模板题)看到复杂度logN,得想到二分给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target  ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。示例1:输入:nums=[-1,0,3,5,9,12],target=9输出:4解释:9出现在......
  • JavaScript基础ECMAScript知识点复习整理
    **本篇文章食用的简单说明**本篇文章为复习JavaScript基础ECMAScript进行了知识点梳理,加粗部分为重点!!!加粗加红为重重点!!!由于JavaScript内容比较多,本篇文章只是基础部分,WebAPIs(DOM和BOM)等知识在后续过程中会继续更新,欢迎小伙伴在评论区补充~推荐大家按记忆梳理部分的内容自......
  • 软考 系统架构设计师系列知识点之杂项集萃(21)
    接前一篇文章:软考系统架构设计师系列知识点之杂项集萃(20)第30题软件结构化设计包括()等任务。A.架构设计、数据设计、过程设计、原型设计B.架构设计、过程设计、程序设计、原型设计C.数据设计、过程设计、交互设计、程序设计D.架构设计、接口设计、数据设计、过程设......
  • 软考 系统架构设计师系列知识点之杂项集萃(22)
    接前一篇文章:软考系统架构设计师系列知识点之杂项集萃(21)第32题人口信息采集处理和利用业务属于(),营业执照发放属于(),户籍管理属于(),参加政府工程交接属于()。第1空A.政府对企业(GovernmenttoBusiness,G2B)B.政府对政府(GovernmenttoGovernment,G2G)C.企业对政府(Businesst......
  • io流知识点概况
    一、前言:1.1.流的概念:java将输入与输出比喻为"流",英文:Stream.就像生活中的"电流","水流"一样,它是以同一个方向顺序移动的过程.只不过这里流动的是字节(2进制数据).所以在IO中有输入流和输出流之分,我们理解他们是连接程序与另一端的"管道",用于获取或发送数据到另一端.JavaI/......