弦图的一些备忘

连接环中不相邻的两点的边

弦图

任意长度>3>3的环都有一个弦

性质

  1. 弦图的每一个诱导子图是弦图
  2. n>3n>3的诱导子图不是完全图

单纯点

N(v)N(v)表示与vv相邻的点集,称vv为单纯点当{v+N(v)}\{v+N(v)\}的诱导子图是一个团

性质

任何一个弦图至少有一个单纯点。 不是完全图的弦图至少有两个不相邻的单纯点。

完美消除序列

图中所有点的一个序列VV满足viV,vi\forall v_i\in V,v_ivi,vi+1,...,vn{v_i,v_{i+1},...,v_n}的诱导子图为一个单纯点。

性质

一个无向图是弦图当且仅当有一个完美消除序列。

最大势算法

从末尾向开头构造完美消除序列,定义节点的势为与之相邻的已经存在于完美消除序列的节点数目,每次选取势最大的点加入序列并更新相邻点的势,重复nn次。 这个算法在不是弦图的时候也能正常运行求出结果,所以必须还要再判序列是否是完美序列才行

判断序列是否是完美消除序列

从后向前扫,在第ii个位置,检查seqiseq_i与在ii之后的相邻点是否成团。设在ii之后与seqiseq_i相邻的点集为VV,那么只需要判断v1v_1是否与Vv1V-v_1中所有的点相邻即可。想不通为什么