图的连通 (4)

9 三连通图

如果一图 G 有至少 k 个点、并且拿掉任何 k-1 个点以後都还是保持连通的,那麽我们就说这个图是 k-点连通的。

9.1 判断 k 连通图的演算法

如果拿掉 k-1 个点会让整张图变得不连通,那麽就会有两个点 s, t,它们之间的 s-t 连通度不超过 k-1。因此,我们可以枚举任两点对,并且利用最小割(Minimum vertex s-t cut) 的演算法,我们可以在 O(n^2 * FindMinCut) 的时间判断这个图是不是 k 连通的。

从 Tarjan 在 1972 年发表了 DFS 演算法并且拿它在线性时间 O(m) 来判断一个图是否为双连通以後,也仅有 Hopcroft 与 Tarjan 在隔年 1973 延伸了 DFS 演算法并且声称在 O(m) 时间判断一个图是否为 3-连通。但是对於 k >= 3 以後,有将近 35 年的时间,大家并不知道是否存在线性时间或几乎线性时间的演算法,判断一张图是否为 k(k>=4) 连通的。

直到在 2019 年这个问题,由 Nanongkai, Saranurak, Yingchareonthawornchai 等人得到了重大突破。他们设计出了一个能在 ~O(m + nk^3) 时间判断一张图是否为 k 连通的演算法。想法非常有趣,大家可以参考下面这个影片由 Saranurak 介绍与讲述:

https://www.youtube.com/watch?v=V1kq1filhjk


<<:  Day9 PHP数据类型--基本类型之字串

>>:  [Day9] THM Pickle Rick

番外篇(2)一起来做 To Do List!- 实作篇(1)

上一篇先介绍运用的知识点,这篇会着重在实作时的心路历程...不是啦,是怎麽把这个网页写出来的。先上成...

Day13. 有了Blue Prism,谁说办公室恋情影响工作-BP的用途

经历过一连串的Blue Prism实作,今天想让大家与自己都松口气, 看到上面的图案,是否有种机械...

Day 8 超多的范例?怎麽办呢?

该文章同步发布於:我的部落格 昨天我们做了一个关於汉堡种类的测试,但真正的测试怎麽可能这麽少呢! ...

D18 - 吃一颗 Class 语法糖 (下)比较 Constructor 与 Class

前言 语法糖 Syntactic sugar,指电脑语言中添加的某种语法,这种语法对语言的功能没有影...

Day19:SwiftUI—Button

前言 今天来学习SwiftUI 的按钮 — Button。 实作 宣告一个 text 按钮 打开一个...