弦图与区间图陈丹琦ppt课件.pptx
《弦图与区间图陈丹琦ppt课件.pptx》由会员分享,可在线阅读,更多相关《弦图与区间图陈丹琦ppt课件.pptx(112页珍藏版)》请在三一办公上搜索。
1、清华大学 陈丹琦,Chordal Graph and Interval Graph,弦图与区间图,图的基本概念,子图(subgraph)图 为图G的子图,图的基本概念,诱导子图(induced subgraph)图 称为图G的诱导子图,图的基本概念,团(clique)图G的一个子图,为关于 的完全图。,图的基本概念,团(clique)图G的一个子图,为关于 的完全图。,极大团(maximal clique)一个团是极大团当它不是其它团的子集。,图的基本概念,团(clique)图G的一个子图,为关于 的完全图。,极大团(maximal clique)一个团是极大团当它不是其它团的子集。,最大团(
2、maximum clique)点数最多的团。,团数,图的基本概念,最小染色(minimum coloring)用最少的颜色给点染色使相邻点颜色不同。,色数,图的基本概念,最大独立集(maximum independent set)最大的一个点的子集使任何两个点不相邻。,图的基本概念,最小团覆盖(minimum clique cover)用最少个数的团覆盖所有的点。,图的基本概念,团数 色数,图的基本概念,团数 色数,最大独立集数 最小团覆盖数,弦图的概念,弦(chord):连接环中不相邻的两个点的边。,Chord,弦图的概念,弦(chord):连接环中不相邻的两个点的边。,弦图(chordal
3、 graph):一个无向图称为弦图当图中任意长度大于3的环都至少有一个弦。,弦图的概念,弦(chord):连接环中不相邻的两个点的边。,弦图(chordal graph):一个无向图称为弦图当图中任意长度大于3的环都至少有一个弦。,弦图的每一个诱导子图一定是弦图。弦图的任一个诱导子图不同构于Cn(n 3),弦图的判定,例题 Zju1015 Fishing net 给定一个无向图,判定它是否为弦图。,单纯点(simplicial vertex):设N(v)表示与点v相邻的点集。一个点称为单纯点当v+N(v)的诱导子图为一个团。,弦图的判定,例题 Zju1015 Fishing net 给定一个无
4、向图,判定它是否为弦图。,单纯点(simplicial vertex):设N(v)表示与点v相邻的点集。一个点称为单纯点当v+N(v)的诱导子图为一个团。,弦图的判定,例题 Zju1015 Fishing net 给定一个无向图,判定它是否为弦图。,单纯点(simplicial vertex):设N(v)表示与点v相邻的点集。一个点称为单纯点当v+N(v)的诱导子图为一个团。,引理:任何一个弦图都至少有一个单纯点,不是完全图的弦图至少有两个不相邻的单纯点。,弦图的判定,完美消除序列(perfect elimination ordering)定义:一个点的序列(每个点出现且恰好出现一次)v1,v
5、2,vn满足vi在vi,vi+1,vn的诱导子图中为一个单纯点。,v6,v5,v4,v3,v2,v1,弦图的判定,完美消除序列(perfect elimination ordering)定义:一个点的序列(每个点出现且恰好出现一次)v1,v2,vn满足vi在vi,vi+1,vn的诱导子图中为一个单纯点。,v6,v5,v4,v3,v2,v1,弦图的判定,定理:一个无向图是弦图当且仅当它有一个完美消除序列。,弦图的判定,定理:一个无向图是弦图当且仅当它有一个完美消除序列。证明:充分性 由引理知任何一个弦图都至少有一个单纯点以及弦图的诱导子图都是弦图。可以使用数学归纳法假设当点数n的弦图一定有完美消
6、除序列,那么点数为n的弦图的完美消除序列可以由一个单纯点加上剩余点的诱导子图的完美消除序列得到。,弦图的判定,定理:一个无向图是弦图当且仅当它有一个完美消除序列。证明:必要性 反证若无向图存在一个长度 3的无弦环,不妨设环中在完美消除序列中出现在最前面的点为v,设环中v与v1,v2相连,根据完美消除序列的性质知v1,v2相连,与环无弦矛盾。所以无向图为弦图。,求完美消除序列,最朴素的算法:每次找一个单纯点v,加入到完美消除序列中。将v以及相关的边从图中删掉。重复以上过程直到所有点都被删除(图为弦图,得到了完美序列)或不存在单纯点v(图不是弦图)。,求完美消除序列,最朴素的算法:每次找一个单纯点
7、v,加入到完美消除序列中。将v以及相关的边从图中删掉。重复以上过程直到所有点都被删除(图为弦图,得到了完美序列)或不存在单纯点v(图不是弦图)。,时间复杂度?O(n4),求完美消除序列,最朴素的算法:每次找一个单纯点v,加入到完美消除序列中。将v以及相关的边从图中删掉。重复以上过程直到所有点都被删除(图为弦图,得到了完美序列)或不存在单纯点v(图不是弦图)。,时间复杂度?O(n4),下面介绍两个求完美消除序列O(m+n)的算法。,LexBFS算法,字典序广度优先搜索(Lexicographic BFS)从n到1的顺序依次给点标号。每个点维护一个list记录与它相邻的已标号点的标号,list中的
8、标号按照按从大到小排序。每次选择list字典序最大的未标号点标号。,LexBFS算法,LexBFS与BFS不同在于每次扩展的节点加了特殊的顺序。,LexBFS算法,vn,LexBFS与BFS不同在于每次扩展的节点加了特殊的顺序。,LexBFS算法,vn,LexBFS与BFS不同在于每次扩展的节点加了特殊的顺序。,LexBFS算法,vn,vn-1,vn,LexBFS与BFS不同在于每次扩展的节点加了特殊的顺序。,LexBFS算法,vn,vn-1,vn,LexBFS与BFS不同在于每次扩展的节点加了特殊的顺序。,LexBFS算法,算法实现,?,LexBFS算法,算法实现,更新一个点的list最多新
9、建一个桶。任何时候桶的数目不超过n。,LexBFS算法,算法实现,O(m+n)!,更新一个点的list最多新建一个桶。任何时候桶的数目不超过n。,MCS算法,最大势算法 Maximum Cardinality Search 从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。设labeli表示第i个点与多少个已标号的点相 邻,每次选择labeli最大的未标号的点进行标号。,MCS算法,最大势算法 Maximum Cardinality Search 从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。设labeli表示第i个点与多少个已标号的点相 邻,每次选
10、择labeli最大的未标号的点进行标号。,i=7,0 0 1 0,0 0 1,MCS算法,最大势算法 Maximum Cardinality Search 从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。设labeli表示第i个点与多少个已标号的点相 邻,每次选择labeli最大的未标号的点进行标号。,i=6,0 0 2 0,0 1 1,MCS算法,最大势算法 Maximum Cardinality Search 从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。设labeli表示第i个点与多少个已标号的点相 邻,每次选择labeli最大的未标号的点进
11、行标号。,i=5,0 1 2 0,0 2 1,MCS算法,最大势算法 Maximum Cardinality Search 从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。设labeli表示第i个点与多少个已标号的点相 邻,每次选择labeli最大的未标号的点进行标号。,i=4,0 2 2 0,1 2 1,MCS算法,最大势算法 Maximum Cardinality Search 从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。设labeli表示第i个点与多少个已标号的点相 邻,每次选择labeli最大的未标号的点进行标号。,i=3,1 2 2 0
12、,2 2 1,MCS算法,最大势算法 Maximum Cardinality Search 从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。设labeli表示第i个点与多少个已标号的点相 邻,每次选择labeli最大的未标号的点进行标号。,i=2,2 2 2 0,2 2 1,MCS算法,最大势算法 Maximum Cardinality Search 从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。设labeli表示第i个点与多少个已标号的点相 邻,每次选择labeli最大的未标号的点进行标号。,i=1,2 2 2 0,2 2 1,MCS算法,MCS
13、算法,算法实现,?,MCS算法,算法实现,0,1,2,MCS算法,算法实现,0,1,2,O(m+n)!,弦图的判定,判断一个序列是否为完美消除序列,弦图的判定,判断一个序列是否为完美消除序列朴素的算法依次判断 vi+1,vn中所有与vi相邻的点是否构成了一个团。时间复杂度:,弦图的判定,判断一个序列是否为完美消除序列优化后的算法设vi+1,vn中所有与vi相邻的点依次为vj1,vjk。只需判断vj1是否与vj2,vjk相邻即可。时间复杂度:O(m+n),弦图的判定,判断一个序列是否为完美消除序列优化后的算法设vi+1,vn中所有与vi相邻的点依次为vj1,vjk。只需判断vj1是否与vj2,v
14、jk相邻即可。时间复杂度:O(m+n),弦图判定问题可以在O(m+n)的时间内解决。,设第i个点在弦图的完美消除序列第p(i)个。令N(v)=w|w与v相邻且p(w)p(v)弦图的极大团一定是 的形式。证明:设点集V的诱导子图为弦图的极大团,设v为V中p(i)值最小的点即出现在完美消除序列中最前面的点。由于 为一个团,V为极大团所以。,弦图的极大团,设第i个点在弦图的完美消除序列第p(i)个。令N(v)=w|w与v相邻且p(w)p(v)弦图的极大团一定是 的形式。推论:弦图最多有n个极大团。如何找到弦图的所有极大团呢?即判断每个 是否为极大团,弦图的极大团,判断 是否为极大团,弦图的极大团,设
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 区间 图陈丹琦 ppt 课件
链接地址:https://www.31ppt.com/p-2059629.html