图论 —— 弦图

别说谁变了你拦得住时间么 提交于 2019-11-26 23:22:32

【概述】

1.基本概念

设有图 G=(V,E),则:

  • 当 V'∈V,E'∈E 时,图 G'=(V',E') 是图 G 的子图
  • 当 V'∈V,E'={∀x∈V',∀y∈V',(x,y)∈E'} 时,G'(V',E') 是图 G 的诱导子图
  • 当 G′ 是图 G 的子图,且 G′ 是关于 V′ 的完全图时,子图 G' 为图 G 的
  • 当 G' 是团,且不是其他团的子集时,G' 为图 G 的极大团
  • 当 G' 是极大团时,且点数最多,G' 为图 G 最大团,记图 G 的最大团的点数为 w(G)
  • 用最少的颜色个数给点染色且相邻点颜色不同,最少的颜色个数称最小染色,记色数为 λ(G)
  • 当 G′ 中所有点不相邻,最大点集最大的图 G′ 为图 G 的最大独立集,记作 α(G)
  • 当用个数最少的团覆盖图 G 所有的点时,称为最小团覆盖,记作 χ(G)

最大团中颜色必须不同,则有:最大团点数 w(G)<=最小染色数 λ(G)

每个团中最多取一个点,则有:最大独立集 α(G)<=最小团覆盖 χ(G)

2.弦图

  • 将一个环中,不相邻的两个结点相连的边称为
  • 当一张无向图中,任意一个大小超过 3 的环,都存在至少一条弦,那么这张无向图称为弦图,弦图的每一诱导子图一定是弦图,且弦图的任一诱导子图不同构于环图 Cn(n>3) 

【弦图的判定】

设 N(v) 为点 v 相邻的点集,当 {v}+N(v) 的诱导子图为一个团时,称点 v 为单纯点,任何一个弦图都至少有一个单纯点,而不完全的弦图至少有两个不相邻的单纯点

一个点的序列 v1,v2,...,vn 满足 vi 在 {vi,vi+1,..,vn} 的诱导子图中为一个单纯点,则称该序列为完美消除序列

若一个无向图是弦图,则其仅有一个完美消除序列,因此,可以从完美消除序列的角度上去进行弦图的判定

在判断弦图时,朴素的算法是:每次找一个单纯点 v,加入完美消除序列,然后将 v 及其相关边从图中删掉,重复以上过程,如果最后所有点都被删除,说明得到了完美消除序列,图是弦图,反之,则不是弦图

最朴素的弦图判定算法时间复杂度高达 O(n^4),因此在求完美序列时,常采用以下两个时间复杂度为 O(n+m) 的算法:

  • LexBFS 算法:点击这里
  • MCS 算法:点击这里

【例题】

  •  
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!