




已阅读5页,还剩107页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
清华大学陈丹琦,ChordalGraphandIntervalGraph,弦图与区间图,图的基本概念,子图(subgraph)图为图G的子图,2,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,图的基本概念,诱导子图(inducedsubgraph)图称为图G的诱导子图,3,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,图的基本概念,团(clique)图G的一个子图,为关于的完全图。,4,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,图的基本概念,团(clique)图G的一个子图,为关于的完全图。,极大团(maximalclique)一个团是极大团当它不是其它团的子集。,5,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,图的基本概念,团(clique)图G的一个子图,为关于的完全图。,极大团(maximalclique)一个团是极大团当它不是其它团的子集。,最大团(maximumclique)点数最多的团。,团数,6,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,图的基本概念,最小染色(minimumcoloring)用最少的颜色给点染色使相邻点颜色不同。,色数,7,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,图的基本概念,最大独立集(maximumindependentset)最大的一个点的子集使任何两个点不相邻。,8,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,图的基本概念,最小团覆盖(minimumcliquecover)用最少个数的团覆盖所有的点。,9,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,图的基本概念,团数色数,10,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,图的基本概念,团数色数,最大独立集数最小团覆盖数,11,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,弦图的概念,弦(chord):连接环中不相邻的两个点的边。,Chord,12,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,弦图的概念,弦(chord):连接环中不相邻的两个点的边。,弦图(chordalgraph):一个无向图称为弦图当图中任意长度大于3的环都至少有一个弦。,13,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,弦图的概念,弦(chord):连接环中不相邻的两个点的边。,弦图(chordalgraph):一个无向图称为弦图当图中任意长度大于3的环都至少有一个弦。,弦图的每一个诱导子图一定是弦图。弦图的任一个诱导子图不同构于Cn(n3),14,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,弦图的判定,例题Zju1015Fishingnet给定一个无向图,判定它是否为弦图。,单纯点(simplicialvertex):设N(v)表示与点v相邻的点集。一个点称为单纯点当v+N(v)的诱导子图为一个团。,15,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,弦图的判定,例题Zju1015Fishingnet给定一个无向图,判定它是否为弦图。,单纯点(simplicialvertex):设N(v)表示与点v相邻的点集。一个点称为单纯点当v+N(v)的诱导子图为一个团。,16,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,弦图的判定,例题Zju1015Fishingnet给定一个无向图,判定它是否为弦图。,单纯点(simplicialvertex):设N(v)表示与点v相邻的点集。一个点称为单纯点当v+N(v)的诱导子图为一个团。,引理:任何一个弦图都至少有一个单纯点,不是完全图的弦图至少有两个不相邻的单纯点。,17,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,弦图的判定,完美消除序列(perfecteliminationordering)定义:一个点的序列(每个点出现且恰好出现一次)v1,v2,vn满足vi在vi,vi+1,vn的诱导子图中为一个单纯点。,v6,v5,v4,v3,v2,v1,18,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,弦图的判定,完美消除序列(perfecteliminationordering)定义:一个点的序列(每个点出现且恰好出现一次)v1,v2,vn满足vi在vi,vi+1,vn的诱导子图中为一个单纯点。,v6,v5,v4,v3,v2,v1,19,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,弦图的判定,定理:一个无向图是弦图当且仅当它有一个完美消除序列。,20,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,弦图的判定,定理:一个无向图是弦图当且仅当它有一个完美消除序列。证明:充分性由引理知任何一个弦图都至少有一个单纯点以及弦图的诱导子图都是弦图。可以使用数学归纳法假设当点数3的无弦环,不妨设环中在完美消除序列中出现在最前面的点为v,设环中v与v1,v2相连,根据完美消除序列的性质知v1,v2相连,与环无弦矛盾。所以无向图为弦图。,22,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,求完美消除序列,最朴素的算法:每次找一个单纯点v,加入到完美消除序列中。将v以及相关的边从图中删掉。重复以上过程直到所有点都被删除(图为弦图,得到了完美序列)或不存在单纯点v(图不是弦图)。,23,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,求完美消除序列,最朴素的算法:每次找一个单纯点v,加入到完美消除序列中。将v以及相关的边从图中删掉。重复以上过程直到所有点都被删除(图为弦图,得到了完美序列)或不存在单纯点v(图不是弦图)。,时间复杂度?O(n4),24,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,求完美消除序列,最朴素的算法:每次找一个单纯点v,加入到完美消除序列中。将v以及相关的边从图中删掉。重复以上过程直到所有点都被删除(图为弦图,得到了完美序列)或不存在单纯点v(图不是弦图)。,时间复杂度?O(n4),下面介绍两个求完美消除序列O(m+n)的算法。,25,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,LexBFS算法,字典序广度优先搜索(LexicographicBFS)从n到1的顺序依次给点标号。每个点维护一个list记录与它相邻的已标号点的标号,list中的标号按照按从大到小排序。每次选择list字典序最大的未标号点标号。,26,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,LexBFS算法,LexBFS与BFS不同在于每次扩展的节点加了特殊的顺序。,27,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,LexBFS算法,vn,LexBFS与BFS不同在于每次扩展的节点加了特殊的顺序。,28,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,LexBFS算法,vn,LexBFS与BFS不同在于每次扩展的节点加了特殊的顺序。,29,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,LexBFS算法,vn,vn-1,vn,LexBFS与BFS不同在于每次扩展的节点加了特殊的顺序。,30,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,LexBFS算法,vn,vn-1,vn,LexBFS与BFS不同在于每次扩展的节点加了特殊的顺序。,31,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,LexBFS算法,算法实现,?,32,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,LexBFS算法,算法实现,更新一个点的list最多新建一个桶。任何时候桶的数目不超过n。,33,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,LexBFS算法,算法实现,O(m+n)!,更新一个点的list最多新建一个桶。任何时候桶的数目不超过n。,34,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,MCS算法,最大势算法MaximumCardinalitySearch从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。设labeli表示第i个点与多少个已标号的点相邻,每次选择labeli最大的未标号的点进行标号。,35,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,MCS算法,最大势算法MaximumCardinalitySearch从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。设labeli表示第i个点与多少个已标号的点相邻,每次选择labeli最大的未标号的点进行标号。,i=7,0010,001,36,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,MCS算法,最大势算法MaximumCardinalitySearch从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。设labeli表示第i个点与多少个已标号的点相邻,每次选择labeli最大的未标号的点进行标号。,i=6,0020,011,37,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,MCS算法,最大势算法MaximumCardinalitySearch从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。设labeli表示第i个点与多少个已标号的点相邻,每次选择labeli最大的未标号的点进行标号。,i=5,0120,021,38,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,MCS算法,最大势算法MaximumCardinalitySearch从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。设labeli表示第i个点与多少个已标号的点相邻,每次选择labeli最大的未标号的点进行标号。,i=4,0220,121,39,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,MCS算法,最大势算法MaximumCardinalitySearch从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。设labeli表示第i个点与多少个已标号的点相邻,每次选择labeli最大的未标号的点进行标号。,i=3,1220,221,40,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,MCS算法,最大势算法MaximumCardinalitySearch从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。设labeli表示第i个点与多少个已标号的点相邻,每次选择labeli最大的未标号的点进行标号。,i=2,2220,221,41,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,MCS算法,最大势算法MaximumCardinalitySearch从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。设labeli表示第i个点与多少个已标号的点相邻,每次选择labeli最大的未标号的点进行标号。,i=1,2220,221,42,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,MCS算法,43,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,MCS算法,算法实现,?,44,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,MCS算法,算法实现,0,1,2,45,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,MCS算法,算法实现,0,1,2,O(m+n)!,46,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,弦图的判定,判断一个序列是否为完美消除序列,47,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,弦图的判定,判断一个序列是否为完美消除序列朴素的算法依次判断vi+1,vn中所有与vi相邻的点是否构成了一个团。时间复杂度:,48,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,弦图的判定,判断一个序列是否为完美消除序列优化后的算法设vi+1,vn中所有与vi相邻的点依次为vj1,vjk。只需判断vj1是否与vj2,vjk相邻即可。时间复杂度:O(m+n),49,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,弦图的判定,判断一个序列是否为完美消除序列优化后的算法设vi+1,vn中所有与vi相邻的点依次为vj1,vjk。只需判断vj1是否与vj2,vjk相邻即可。时间复杂度:O(m+n),弦图判定问题可以在O(m+n)的时间内解决。,50,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,设第i个点在弦图的完美消除序列第p(i)个。令N(v)=w|w与v相邻且p(w)p(v)弦图的极大团一定是的形式。证明:设点集V的诱导子图为弦图的极大团,设v为V中p(i)值最小的点即出现在完美消除序列中最前面的点。由于为一个团,V为极大团所以。,弦图的极大团,51,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,设第i个点在弦图的完美消除序列第p(i)个。令N(v)=w|w与v相邻且p(w)p(v)弦图的极大团一定是的形式。推论:弦图最多有n个极大团。如何找到弦图的所有极大团呢?即判断每个是否为极大团,弦图的极大团,52,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,判断是否为极大团,弦图的极大团,设A=,若存在B=使得则A不是极大团。,53,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,判断是否为极大团,弦图的极大团,设A=,若存在B=使得则A不是极大团。,p(w)p(v),54,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,判断是否为极大团,弦图的极大团,设A=,若存在B=使得则A不是极大团。,p(w)3,设第i个点对应的区间为Ii。由Ii与Ii+1相交,取,由于Ii与Ii+2不相交,则pi一定严格递增或严格递减。由及得到,与I0与I2不相交矛盾。所以区间图一定是弦图。,81,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,经典问题,例题1给定n个区间,要求选择最多的区间使得区间不互相重叠。,82,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,经典问题,例题1给定n个区间,要求选择最多的区间使得区间不互相重叠。,区间图的最大独立集,83,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,经典问题,例题2Tetris有n个积木,高度均为1,第i个积木的宽度范围为Li,Ri,选择一个积木的下落顺序使得最后积木总高度尽可能小。,84,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,经典问题,例题2Tetris有n个积木,高度均为1,第i个积木的宽度范围为Li,Ri,选择一个积木的下落顺序使得最后积木总高度尽可能小。,区间图的最小染色,积木下落顺序:按照颜色标号从小到大落下。,85,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,区间图,给定n个区间,所对应的区间图为GG的一个完美消除序列:将所有的区间按照右端点从小到大排序。,86,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,区间图,给定n个区间,所对应的区间图为GG的一个完美消除序列:将所有的区间按照右端点从小到大排序。,例题1将所有的区间按照右端点从小到大排序,依次处理每个区间,如果与已选区间没有重叠则选择该区间。时间复杂度:O(nlog2n),87,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,区间图,给定n个区间,所对应的区间图为GG的一个完美消除序列:将所有的区间按照右端点从小到大排序。,例题2将所有的区间按照右端点从大到小排序,依次处理每个区间,选择一个可以染的最小的颜色染色。线段树或堆维护时间复杂度:O(nlog2n),88,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,树的分解(TreeDecomposition),定义对于一个无向图G=(V,E),树的分解定义为(X,T),X=X1,X2,Xm其中Xi为V的一个子集,T是一棵树,点集为X。T满足以下几个性质:,89,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,树的分解(TreeDecomposition),定义对于一个无向图G=(V,E),树的分解定义为(X,T),X=X1,X2,Xm其中Xi为V的一个子集,T是一棵树,点集为X。T满足以下几个性质:,X1X2Xm=V,90,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,树的分解(TreeDecomposition),定义对于一个无向图G=(V,E),树的分解定义为(X,T),X=X1,X2,Xm其中Xi为V的一个子集,T是一棵树,点集为X。T满足以下几个性质:,X1X2Xm=V,图G中任何一条边(u,v)存在一个Xi使得u,vXi。,91,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,树的分解(TreeDecomposition),定义对于一个无向图G=(V,E),树的分解定义为(X,T),X=X1,X2,Xm其中Xi为V的一个子集,T是一棵树,点集为X。T满足以下几个性质:,X1X2Xm=V,图G中任何一条边(u,v)存在一个Xi使得u,vXi。,对于每一个点v,P(v)=Xi|vXi,则T中P(v)的诱导子图是连通的。,92,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,树的分解(TreeDecomposition),93,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,CliqueTree,一个无向图G的极大团树T(CliqueTree)定义为:T的顶点为图G的所有极大团包含每个点的所有极大团为T的一个连通子图。,94,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,CliqueTree,CliqueTree是一种treedecomposition.,95,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,CliqueTree,一个无向图G为弦图当且仅当它存在一个CliqueTree.,CliqueTree是一种treedecomposition.,96,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,CliqueTree,一个无向图G为弦图当且仅当它存在一个CliqueTree.,构建弦图的一个CliqueTree找出弦图的所有极大团。构图:极大团为点,两个点之间的边权为两个极大团的交集的点的个数。求图的一个最大生成树。,CliqueTree是一种treedecomposition.,97,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,CliqueTree,一个无向图G为弦图当且仅当它存在一个CliqueTree.,CliqueTree是一种treedecomposition.,98,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,CliqueTree,一个无向图G为区间图当且仅当它存在一个CliqueTree是一条链。,99,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,区间图的判定,判断是否是弦图O(m+n)如果是弦图,找出所有的极大团O(m+n)判断是否存在一个连续的极大团序列即包含每个点的极大团在序列中都是连续的。,100,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,区间图的判定,判断是否是弦图O(m+n)如果是弦图,找出所有的极大团O(m+n)判断是否存在一个连续的极大团序列即包含每个点的极大团在序列中都是连续的。,101,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,区间图的判定,PQ树给定一个0,1矩阵要求将矩阵的列重排使得每一行的1是连续的。,102,TsinghuaUniversityChenDanqi,TsinghuaUniversityChenDanqi,区间图的判定,PQ树给定一个0,1矩阵要求将矩阵的列重
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 绵山风景区天气预报
- 鸡凤翔旅游攻略
- 酸枣仁科普课件
- 探索世界与把握规律-2026高考政治一轮复习单元测试卷(含答案)
- 人教版八年级英语下册专练:重点语法过关:状语从句(含答案)
- 酯化反应课件
- CN120199912A 一种磷酸锰铁锂电池组及其加工方法
- 人教版八年级英语上册期中学情评估(含答案)
- 老师岗前专业知识培训课件
- 老员工产品知识培训心得
- 《跨境电商物流与供应链管理》课件
- 宠物食品基础知识培训课件
- 图解6S管理课件
- 2025劳动合同官方下载
- 《LEXUS雷克萨斯传奇》课件
- 青岛科学四年级上册《风的形成》课件
- 公路工程监理规划
- 医疗医疗信息化管理制度
- 宇宙弦结构演化模拟-洞察分析
- 风力发电项目工程承包合同
- 幼儿园课件之大班语言《我是大班小朋友》
评论
0/150
提交评论