弦图与区间图 Chordal Graph and Interval Graph 清华大学 陈丹琦 1.

Slides:



Advertisements
Similar presentations
3 的倍数的特征 的倍数有 : 。 5 的倍数有 : 。 既是 2 的倍数又是 5 的倍数有 : 。 12 , 18 , 20 , 48 , 60 , 72 , , 25 , 60 ,
Advertisements


2 和 5 的倍数的特征 运动热身 怎样找一个数的倍数? 从小到大写出 2 的倍数( 10 个): 写出 5 的倍数( 6 个) 2 , 4 , 6 , 8 , 10 , 12 , 14 , 16 , 18 , 20 5 , 10 , 15 , 20 , 25 , 30.
练一练: 在数轴上画出表示下列各数的点, 并指出这些点相互间的关系: -6 , 6 , -3 , 3 , -1.5, 1.5.
动物疫病防控政策措施评估 王承芳 动物健康推广服务项目 北京项目办公室 2008 年. 主要内容 政策和动物疫病防控政策的概念 动物疫病防控政策评估 评价动物疫病影响的经济学工具 动物卫生经济学的概念 动物卫生经济学研究对象和内容 动物卫生经济学研究方法 成本效益分析法.
信号与系统 第三章 傅里叶变换 东北大学 2017/2/27.
复习: :对任意的x∈A,都有x∈B。 集合A与集合B间的关系 A(B) A B :存在x0∈A,但x0∈B。 A B A B.
《解析几何》 -Chapter 3 §7 空间两直线的相关位置.
§1 线性空间的定义与性质 ★线性空间的定义 ★线性空间的性质 ★线性空间的子空间 线性空间是线性代数的高等部分,是代数学
常用逻辑用语复习课 李娟.
小学生游戏.
最大团问题 回溯法应用 作者:余新华 时间:
在数轴上比较数的大小.
第5章 定积分及其应用 基本要求 5.1 定积分的概念与性质 5.2 微积分基本公式 5.3 定积分的换元积分法与分部积分法
第三节 格林公式及其应用(2) 一、曲线积分与路径无关的定义 二、曲线积分与路径无关的条件 三、二元函数的全微分的求积 四、小结.
2-7、函数的微分 教学要求 教学要点.
七 年 级 数 学 第二学期 (苏 科 版) 复习 三角形.
八年级下数学课题学习 格点多边形的面积计算 数格点 算面积.
初中数学八年级下册 (苏科版) 10.4 探索三角形 相似的条件(2).
第5章 §5.3 定积分的积分法 换元积分法 不定积分 分部积分法 换元积分法 定积分 分部积分法.
Chap5 Graph.
第二章 矩阵(matrix) 第8次课.
强连通分量 无向图 1、任意两顶点连通称该图为连通图 2、否则将其中的极大连通子图称为连通分量 A D C B E 有向图
物体识别 3D建图 semantic mapping
Lexicographical order VS canonical order
组合数学 第五章 二项式系数 主要内容: 1. 二项式系数及相关性质 2. 链与反链.
使用矩阵表示 最小生成树算法.
第八模块 复变函数 第二节 复变函数的极限与连续性 一、复变函数的概念 二、复变函数的极限 二、复变函数的连续性.
无向树和根树.
第 五 章 图 论 (第二部分) 1. 通路 2. 图的连通性.
计算.
数列.
§4 谓词演算的性质 谓词逻辑Pred(Y)。 是Y上的关于类型 {F,→,x|xX}的自由代数 赋值 形式证明
线段的有关计算.
顺序表的删除.
线 性 代 数 厦门大学线性代数教学组 2019年4月24日6时8分 / 45.
3.4 圆心角(1).
3.3 垂径定理 第2课时 垂径定理的逆定理.
定理 6.10(五色定理):任何平面图G是5-可着色的。
复习.
第十章 双线性型 Bilinear Form 厦门大学数学科学学院 网址: gdjpkc.xmu.edu.cn
成绩是怎么算出来的? 16级第一学期半期考试成绩 班级 姓名 语文 数学 英语 政治 历史 地理 物理 化学 生物 总分 1 张三1 115
正切函数的图象和性质 周期函数定义: 一般地,对于函数 (x),如果存在一个非零常数T,使得当x取定义域内的每一个值时,都有
定理21.9(可满足性定理)设A是P(Y)的协调子集,则存在P(Y)的解释域U和项解释,使得赋值函数v(A){1}。
第16讲 相似矩阵与方阵的对角化 主要内容: 1.相似矩阵 2. 方阵的对角化.
§8.3 不变因子 一、行列式因子 二、不变因子.
§6.7 子空间的直和 一、直和的定义 二、直和的判定 三、多个子空间的直和.
数据集的抽取式摘要 程龚, 徐丹云.
1.2 子集、补集、全集习题课.
1.设A和B是集合,证明:A=B当且仅当A∩B=A∪B
树和图 tree and graph 蔡亚星.
多层循环 Private Sub Command1_Click() Dim i As Integer, j As Integer
第七、八次实验要求.
2.2矩阵的代数运算.
上杭二中 曾庆华 上杭二中 曾庆华 上杭二中 曾庆华.
第15讲 特征值与特征向量的性质 主要内容:特征值与特征向量的性质.
高中数学必修 平面向量的基本定理.
《离散结构》 二元运算性质的判断 西安工程大学计算机科学学院 王爱丽.
§2 方阵的特征值与特征向量.
主讲教师 欧阳丹彤 吉林大学计算机科学与技术学院
本中心主要研究者: 申办者: 合同研究组织:
定义5 把矩阵 A 的行换成同序数的列得到的矩阵,
第四节 向量的乘积 一、两向量的数量积 二、两向量的向量积.
三角 三角 三角 函数 余弦函数的图象和性质.
§4.5 最大公因式的矩阵求法( Ⅱ ).
离散数学─归纳与递归 南京大学计算机科学与技术系
最小生成树 最优二叉树.
§2 自由代数 定义19.7:设X是集合,G是一个T-代数,为X到G的函数,若对每个T-代数A和X到A的函数,都存在唯一的G到A的同态映射,使得=,则称G(更严格的说是(G,))是生成集X上的自由T-代数。X中的元素称为生成元。 A变, 变 变, 也变 对给定的 和A,是唯一的.
圖 論 簡 介.
二、平面图的特征 找出一个图是平面图的充分必要条件的研究曾经持续了几十年, 直到 1930 年库拉托斯基 (Kuratowski) 给出了平面图的一个非常简洁的特征。
Presentation transcript:

弦图与区间图 Chordal Graph and Interval Graph 清华大学 陈丹琦 1

图的基本概念 子图 (subgraph) 图 为图G的子图 2

图的基本概念 图 称为图G的诱导子图 3

图的基本概念 团(clique) 图G的一个子图 , 为关于 的完全图。 4

图的基本概念 团(clique) 极大团(maximal clique) 一个团是极大团当它不是其它团的子集。 图G的一个子图 , 为关于 的完全图。 极大团(maximal clique) 一个团是极大团当它不是其它团的子集。 5

图的基本概念 团(clique) 极大团(maximal clique) 最大团(maximum clique) 图G的一个子图 , 为关于 的完全图。 极大团(maximal clique) 一个团是极大团当它不是其它团的子集。 最大团(maximum clique) 点数最多的团。 团数 6

图的基本概念 最小染色(minimum coloring) 用最少的颜色给点染色使相邻点颜色不同。 色数 7

图的基本概念 最大独立集(maximum independent set) 最大的一个点的子集使任何两个点不相邻。 8

图的基本概念 最小团覆盖(minimum clique cover) 用最少个数的团覆盖所有的点。 9

图的基本概念 团数 ≤ 色数 10

图的基本概念 团数 ≤ 色数 最大独立集数 ≤ 最小团覆盖数 11

弦图的概念 弦(chord):连接环中不相邻的两个点的边。 Chord 12

弦图的概念 弦(chord):连接环中不相邻的两个点的边。 弦图(chordal graph):一个无向图称为弦图当图中任意长度大于3的环都至少有一个弦。 13

弦图的概念 弦(chord):连接环中不相邻的两个点的边。 弦图(chordal graph):一个无向图称为弦图当图中任意长度大于3的环都至少有一个弦。 弦图的每一个诱导子图一定是弦图。 弦图的任一个诱导子图不同构于Cn (n > 3) 14

弦图的判定 [例题 ] Zju1015 Fishing net 给定一个无向图,判定它是否为弦图。 单纯点(simplicial vertex):设N(v)表示与点v相邻的点集。一个点称为单纯点当{v} + N(v)的诱导子图为一个团。 15

弦图的判定 [例题 ] Zju1015 Fishing net 给定一个无向图,判定它是否为弦图。 单纯点(simplicial vertex):设N(v)表示与点v相邻的点集。一个点称为单纯点当{v} + N(v)的诱导子图为一个团。 16

弦图的判定 [例题 ] Zju1015 Fishing net 给定一个无向图,判定它是否为弦图。 单纯点(simplicial vertex):设N(v)表示与点v相邻的点集。一个点称为单纯点当{v} + N(v)的诱导子图为一个团。 引理:任何一个弦图都至少有一个单纯点,不是完全图的弦图至少有两个不相邻的单纯点。 17

弦图的判定 完美消除序列(perfect elimination ordering) 定义:一个点的序列(每个点出现且恰好出现一次)v1, v2, …, vn满足vi在{vi, vi+1,…,vn}的诱导子图中为一个单纯点。 v3 v2 v1 v6 v5 v4 18

弦图的判定 完美消除序列(perfect elimination ordering) 定义:一个点的序列(每个点出现且恰好出现一次)v1, v2, …, vn满足vi在{vi, vi+1,…,vn}的诱导子图中为一个单纯点。 v3 v2 v1 v6 v5 v4 19

弦图的判定 定理:一个无向图是弦图当且仅当它有一个完美消除序列。 20

弦图的判定 定理:一个无向图是弦图当且仅当它有一个完美消除序列。 证明: 充分性 由引理知任何一个弦图都至少有一个单纯点以及弦图的诱导子图都是弦图。可以使用数学归纳法假设当点数<n的弦图一定有完美消除序列,那么点数为n的弦图的完美消除序列可以由一个单纯点加上剩余点的诱导子图的完美消除序列得到。 21

弦图的判定 定理:一个无向图是弦图当且仅当它有一个完美消除序列。 证明: 必要性 反证若无向图存在一个长度 > 3的无弦环,不妨设环中在完美消除序列中出现在最前面的点为v,设环中v与v1, v2相连,根据完美消除序列的性质知v1, v2相连,与环无弦矛盾。所以无向图为弦图。 22

求完美消除序列 最朴素的算法: 每次找一个单纯点v,加入到完美消除序列中。 将v以及相关的边从图中删掉。 23

求完美消除序列 最朴素的算法: 时间复杂度?? O(n4) 每次找一个单纯点v,加入到完美消除序列中。 将v以及相关的边从图中删掉。 24

求完美消除序列 最朴素的算法: 时间复杂度?? O(n4) 每次找一个单纯点v,加入到完美消除序列中。 将v以及相关的边从图中删掉。 下面介绍两个求完美消除序列O(m + n)的算法。 25

LexBFS算法 字典序广度优先搜索(Lexicographic BFS) 从n到1的顺序依次给点标号。 每个点维护一个list记录与它相邻的已标号点的标号,list中的标号按照按从大到小排序。 每次选择list字典序最大的未标号点标号。 26

LexBFS算法 LexBFS与BFS不同在于每次扩展的节点加了特殊的顺序。 27

LexBFS算法 LexBFS与BFS不同在于每次扩展的节点加了特殊的顺序。 vn 28

LexBFS算法 LexBFS与BFS不同在于每次扩展的节点加了特殊的顺序。 vn 29

LexBFS算法 LexBFS与BFS不同在于每次扩展的节点加了特殊的顺序。 vn vn-1 vn 30

LexBFS算法 LexBFS与BFS不同在于每次扩展的节点加了特殊的顺序。 vn vn-1 vn 31

LexBFS算法 ? 算法实现 32

LexBFS算法 算法实现 更新一个点的list最多新建一个桶。 任何时候桶的数目不超过n。 33

LexBFS算法 算法实现 O(m + n)!!! 更新一个点的list最多新建一个桶。 任何时候桶的数目不超过n。 34

MCS算法 最大势算法 Maximum Cardinality Search 从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。 设label[i]表示第i个点与多少个已标号的点相 邻,每次选择label[i]最大的未标号的点进行标号。 35

MCS算法 最大势算法 Maximum Cardinality Search i = 7 从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。 设label[i]表示第i个点与多少个已标号的点相 邻,每次选择label[i]最大的未标号的点进行标号。 0 0 1 0 i = 7 0 0 1 36

MCS算法 最大势算法 Maximum Cardinality Search i = 6 从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。 设label[i]表示第i个点与多少个已标号的点相 邻,每次选择label[i]最大的未标号的点进行标号。 0 0 2 0 i = 6 0 1 1 37

MCS算法 最大势算法 Maximum Cardinality Search i = 5 从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。 设label[i]表示第i个点与多少个已标号的点相 邻,每次选择label[i]最大的未标号的点进行标号。 0 1 2 0 i = 5 0 2 1 38

MCS算法 最大势算法 Maximum Cardinality Search i = 4 从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。 设label[i]表示第i个点与多少个已标号的点相 邻,每次选择label[i]最大的未标号的点进行标号。 0 2 2 0 i = 4 1 2 1 39

MCS算法 最大势算法 Maximum Cardinality Search i = 3 从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。 设label[i]表示第i个点与多少个已标号的点相 邻,每次选择label[i]最大的未标号的点进行标号。 1 2 2 0 i = 3 2 2 1 40

MCS算法 最大势算法 Maximum Cardinality Search i = 2 从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。 设label[i]表示第i个点与多少个已标号的点相 邻,每次选择label[i]最大的未标号的点进行标号。 2 2 2 0 i = 2 2 2 1 41

MCS算法 最大势算法 Maximum Cardinality Search i = 1 从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。 设label[i]表示第i个点与多少个已标号的点相 邻,每次选择label[i]最大的未标号的点进行标号。 2 2 2 0 i = 1 2 2 1 42

MCS算法 43

MCS算法 ? 算法实现 44

MCS算法 算法实现 1 2 45

MCS算法 算法实现 O(m + n)!!! 1 2 46

弦图的判定 判断一个序列是否为完美消除序列 47

弦图的判定 判断一个序列是否为完美消除序列 朴素的算法 依次判断 {vi+1,…,vn}中所有与vi相邻的点是否构成了一个团。 时间复杂度: 48

弦图的判定 判断一个序列是否为完美消除序列 优化后的算法 设{vi+1,…,vn}中所有与vi相邻的点依次为vj1, …, vjk。 只需判断vj1是否与vj2, …, vjk相邻即可。 时间复杂度: O(m + n) 49

弦图的判定 判断一个序列是否为完美消除序列 优化后的算法 弦图判定问题可以在O(m + n)的时间内解决。 设{vi+1,…,vn}中所有与vi相邻的点依次为vj1, …, vjk。 只需判断vj1是否与vj2, …, vjk相邻即可。 时间复杂度: O(m + n) 弦图判定问题可以在O(m + n)的时间内解决。 50

弦图的极大团 设第i个点在弦图的完美消除序列第p(i)个。 令N(v) = {w | w与v相邻且p(w) > p(v)} 弦图的极大团一定是 的形式。 证明: 设点集V的诱导子图为弦图的极大团,设v为V中p(i)值最小的点即出现在完美消除序列中最前面的点。由于 为一个团,V为极大团所以 。 51

弦图的极大团 推论:弦图最多有n个极大团。 设第i个点在弦图的完美消除序列第p(i)个。 令N(v) = {w | w与v相邻且p(w) > p(v)} 弦图的极大团一定是 的形式。 推论:弦图最多有n个极大团。 如何找到弦图的所有极大团呢? 即判断每个 是否为极大团 52

弦图的极大团 判断 是否为极大团 设A = ,若存在B = 使得 则A不是极大团。 53

弦图的极大团 判断 是否为极大团 设A = ,若存在B = 使得 则A不是极大团。 p(w) < p(v) 54

弦图的极大团 判断 是否为极大团 设A = ,若存在B = 使得 则A不是极大团。 判断 是否为极大团 设A = ,若存在B = 使得 则A不是极大团。 p(w) < p(v) 设next(v) 表示N(v)中最前的点。令w*表示所有满足 的w中最后的一个点。 55

弦图的极大团 判断 是否为极大团 设A = ,若存在B = 使得 则A不是极大团。 判断 是否为极大团 设A = ,若存在B = 使得 则A不是极大团。 p(w) < p(v) 设next(v) 表示N(v)中最前的点。令w*表示所有满足 的w中最后的一个点。 next(w*) = v (否则next(w*)也是满足条件的w) 56

弦图的极大团 Next(w) = v 当且仅当 |N(v)| + 1 ≤ |N(w)| 57

弦图的极大团 Next(w) = v 只需判断是否存在一个w,满足Next(w) = v 且|N(v)| + 1 ≤ |N(w)|即可。 当且仅当 |N(v)| + 1 ≤ |N(w)| 只需判断是否存在一个w,满足Next(w) = v 且|N(v)| + 1 ≤ |N(w)|即可。 时间复杂度:O(m + n) 58

弦图的点染色问题 用最少的颜色给每个点染色使得相邻的点染的颜色不同。 [例题] HNOI2008《神奇的国度》 59

弦图的点染色问题 用最少的颜色给每个点染色使得相邻的点染的颜色不同。 [例题] HNOI2008《神奇的国度》 完美消除序列从后往前依次给每个点染色,给每个点染上可以染的最小的颜色。 60

弦图的点染色问题 用最少的颜色给每个点染色使得相邻的点染的颜色不同。 [例题] HNOI2008《神奇的国度》 v3 v2 v1 v6 v5 61

弦图的点染色问题 用最少的颜色给每个点染色使得相邻的点染的颜色不同。 [例题] HNOI2008《神奇的国度》 v3 v2 v1 v6 v5 62

弦图的点染色问题 用最少的颜色给每个点染色使得相邻的点染的颜色不同。 [例题] HNOI2008《神奇的国度》 v3 v2 v1 v6 v5 63

弦图的点染色问题 用最少的颜色给每个点染色使得相邻的点染的颜色不同。 [例题] HNOI2008《神奇的国度》 v3 v2 v1 v6 v5 64

弦图的点染色问题 用最少的颜色给每个点染色使得相邻的点染的颜色不同。 [例题] HNOI2008《神奇的国度》 v3 v2 v1 v6 v5 65

弦图的点染色问题 用最少的颜色给每个点染色使得相邻的点染的颜色不同。 [例题] HNOI2008《神奇的国度》 v3 v2 v1 v6 v5 66

弦图的点染色问题 用最少的颜色给每个点染色使得相邻的点染的颜色不同。 [例题] HNOI2008《神奇的国度》 v3 v2 v1 v6 v5 67

弦图的点染色问题 用最少的颜色给每个点染色使得相邻的点染的颜色不同。 [例题] HNOI2008《神奇的国度》 证明: 设使用了T种颜色, 则T ≥ 色数 T = 团数 ≤ 色数 团数 = 色数 = T 时间复杂度: O(m + n) 68

弦图的点染色问题 团数 = 色数!!! 用最少的颜色给每个点染色使得相邻的点染的颜色不同。 [例题] HNOI2008《神奇的国度》 证明: 设使用了T种颜色, 则T ≥ 色数 T = 团数 ≤ 色数 团数 = 色数 = T 团数 = 色数!!! 时间复杂度: O(m + n) 69

弦图的最大独立集和最小团覆盖 最大独立集 选择最多的点使得任意两个点不相邻。 70

弦图的最大独立集和最小团覆盖 最大独立集 选择最多的点使得任意两个点不相邻。 Sol 完美消除序列从前往后能选就选。 v3 v2 v1 v6 71

弦图的最大独立集和最小团覆盖 最小团覆盖 用最少个数的团覆盖所有的点。 72

弦图的最大独立集和最小团覆盖 最小团覆盖 用最少个数的团覆盖所有的点。 Sol 设最大独立集为{p1 , p2 , …, pt},则{p1∪N(p1), …, pt∪N(pt)}为最小团覆盖。 v3 v2 v1 v6 v5 v4 73

弦图的最大独立集和最小团覆盖 证明 {p1 , p2 , …, pt}为一个独立集。 t ≤ 74

弦图的最大独立集和最小团覆盖 证明 {p1 , p2 , …, pt}为一个独立集。 t ≤ {p1∪N(p1), …, pt∪N(pt)}为一个团覆盖。 t ≥ 75

弦图的最大独立集和最小团覆盖 证明 {p1 , p2 , …, pt}为一个独立集。 t ≤ {p1∪N(p1), …, pt∪N(pt)}为一个团覆盖。 t ≥ 由 知 最大独立集数 = 最小团覆盖数!!! 76

完美图与伴完美图 完美图(Perfect Graph)的概念 一个图G称为完美图若它的每一个诱导子图都满足 。 77

完美图与伴完美图 完美图(Perfect Graph)的概念 伴完美图(Co-perfect Graph)的概念 78

完美图与伴完美图 完美图(Perfect Graph)的概念 伴完美图(Co-perfect Graph)的概念 完美图 = 伴完美图 完美图 = 伴完美图 弦图属于完美图。 79

区间图 区间图(Interval Graph)定义 给定一些区间,定义一个相交图为每个顶点表示一个区间,两个点有边当且仅当两个区间的交集非空。 一个图为区间图当它是若干个区间的相交图。 1 2 2 5 3 3 1 4 5 4 80

区间图 区间图一定是弦图。 证明: 若区间图中存在一个长度 > 3的无弦环 {v0 ,v1 ,…, vl-1 , vl = v0}, l > 3,设第i个点对应的区间为Ii。由Ii与Ii+1相交, 取 ,由于Ii与Ii+2不相交,则pi一定严格递增或严格递减。由 及 得到 ,与I0与I2不相交矛盾。所以区间图一定是弦图。 81

经典问题 [例题1] 给定n个区间,要求选择最多的区间 使得区间不互相重叠。 82

经典问题 [例题1] 给定n个区间,要求选择最多的区间 使得区间不互相重叠。 区间图的最大独立集 83

经典问题 [例题2] Tetris 有n个积木,高度均为1,第i个积木的宽度范围为[Li, Ri],选择一个积木的下落顺序使得最后积木总高度尽可能小。 84

经典问题 区间图的最小染色 [例题2] Tetris 有n个积木,高度均为1,第i个积木的宽度范围为[Li, Ri],选择一个积木的下落顺序使得最后积木总高度尽可能小。 区间图的最小染色 积木下落顺序:按照颜色标号从小到大落下。 85

区间图 给定n个区间,所对应的区间图为G G的一个完美消除序列: 将所有的区间按照右端点从小到大排序。 86

区间图 [例题1] 将所有的区间按照右端点从小到大排序,依次处理每个区间,如果与已选区间没有重叠则选择该区间。 给定n个区间,所对应的区间图为G G的一个完美消除序列: 将所有的区间按照右端点从小到大排序。 [例题1] 将所有的区间按照右端点从小到大排序,依次处理每个区间,如果与已选区间没有重叠则选择该区间。 时间复杂度:O(nlog2n) 87

区间图 [例题2] 将所有的区间按照右端点从大到小排序,依次处理每个区间,选择一个可以染的最小的颜色染色。 给定n个区间,所对应的区间图为G 将所有的区间按照右端点从小到大排序。 [例题2] 将所有的区间按照右端点从大到小排序,依次处理每个区间,选择一个可以染的最小的颜色染色。 线段树或堆维护 时间复杂度:O(nlog2n) 88

树的分解(Tree Decomposition) 定义 对于一个无向图G = (V, E), 树的分解定义为(X, T), X = {X1 , X2 , …, Xm}其中Xi为V的一个子集,T是一棵树,点集为X。T满足以下几个性质: 89

树的分解(Tree Decomposition) 定义 对于一个无向图G = (V, E), 树的分解定义为(X, T), X = {X1 , X2 , …, Xm}其中Xi为V的一个子集,T是一棵树,点集为X。T满足以下几个性质: X1 ∪ X2 ∪ … ∪ Xm =V 90

树的分解(Tree Decomposition) 定义 对于一个无向图G = (V, E), 树的分解定义为(X, T), X = {X1 , X2 , …, Xm}其中Xi为V的一个子集,T是一棵树,点集为X。T满足以下几个性质: X1 ∪ X2 ∪ … ∪ Xm =V 图G中任何一条边(u, v)存在一个Xi使得u, v∈ Xi。 91

树的分解(Tree Decomposition) 定义 对于一个无向图G = (V, E), 树的分解定义为(X, T), X = {X1 , X2 , …, Xm}其中Xi为V的一个子集,T是一棵树,点集为X。T满足以下几个性质: X1 ∪ X2 ∪ … ∪ Xm =V 图G中任何一条边(u, v)存在一个Xi使得u, v∈ Xi。 对于每一个点v,P(v)={Xi | v ∈Xi},则T中P(v)的诱导子图是连通的。 92

树的分解(Tree Decomposition) 93

Clique Tree 一个无向图G的极大团树T(Clique Tree)定义为: T的顶点为图G的所有极大团 94

Clique Tree Clique Tree是一种tree decomposition. 95

Clique Tree Clique Tree是一种tree decomposition. 一个无向图G为弦图当且仅当它存在一个Clique Tree. 96

Clique Tree Clique Tree是一种tree decomposition. 一个无向图G为弦图当且仅当它存在一个Clique Tree. 构建弦图的一个Clique Tree 找出弦图的所有极大团。 构图 :极大团为点, 两个点之间的边权为两个极大团的交集的点的个数。 求图 的一个最大生成树。 97

Clique Tree Clique Tree是一种tree decomposition. 一个无向图G为弦图当且仅当它存在一个Clique Tree. 98

Clique Tree 一个无向图G为区间图当且仅当它存在一个Clique Tree是一条链。 99

区间图的判定 判断是否是弦图 O(m + n) 如果是弦图,找出所有的极大团 O(m + n) 判断是否存在一个连续的极大团序列即包含每个点的极大团在序列中都是连续的。 100

区间图的判定 判断是否是弦图 O(m + n) 如果是弦图,找出所有的极大团 O(m + n) 判断是否存在一个连续的极大团序列即包含每个点的极大团在序列中都是连续的。 101

区间图的判定 PQ树 给定一个0, 1矩阵要求将矩阵的列重排使得每一行的1是连续的。 102

区间图的判定 PQ树 给定一个0, 1矩阵要求将矩阵的列重排使得每一行的1是连续的。 P节点 [子节点可以任意重排] Q节点 [原顺序或反序] 103

区间图的判定 PQ树 给定一个0, 1矩阵要求将矩阵的列重排使得每一行的1是连续的。 FABEDCHGIJ P节点 [子节点可以任意重排] [原顺序或反序] FABEDCHGIJ 104

区间图的判定 元素集合为X, 初始元素顺序任意。 有若干个限制, 每一个限制集合I表示要将I内的元素变成连续的。 利用PQ树每一个限制可以在O(|I|)内解决, 总的时间复杂度为 。 105

区间图的判定 元素集合为X, 初始元素顺序任意。 有若干个限制, 每一个限制集合I表示要将I内的元素变成连续的。 利用PQ树每一个限制可以在O(|I|)内解决, 总的时间复杂度为 。 区间图判定 最多有n个极大团, |X| ≤ n 每个点最多属于deg(v)个极大团, 时间复杂度为O(n + m)。 106

例 X = {A, B, C, D} 107

例 X = {A, B, C, D} I1 = {A, B, C} 108

例 X = {A, B, C, D} I1 = {A, B, C} I2 = {A, D} 109

区间图的判定 PQ树的实现 感兴趣的同学欢迎与我联系。 很复杂 -______- 110

区间图的判定 PQ树的实现 很复杂 -______- 感兴趣的同学欢迎与我联系。 其他区间图判定方法: Hsu [1992], Hsu and Ma [1999] decomposition, off-line 《A new Test for Interval Graphs》 111

Thank you. My Email: cdq10131@gmail.com 112