区间图与弦图_第1页
区间图与弦图_第2页
区间图与弦图_第3页
区间图与弦图_第4页
区间图与弦图_第5页
已阅读5页,还剩62页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

区间图与弦图ChordalGraphandIntervalGraph图的基本概念诱导子图(inducedsubgraph)

称为图G的诱导子图

图的基本概念团(clique)

图G的一个子图,为关于

的完全图。

极大团(maximalclique)

一个团是极大团当它不是其它团的子集。

最大团(maximumclique)

点数最多的团。

团数图的基本概念最小染色(minimumcoloring)

用最少的颜色给点染色使相邻点颜色不同。

色数图的基本概念最大独立集(maximumindependentset)

最大的一个点的子集使任何两个点不相邻。

图的基本概念最小团覆盖(minimumcliquecover)

用最少个数的团覆盖所有的点。

图的基本概念团数≤色数

证明团数<=色数:

色数不可能少于团数、、、图的基本概念团数≤色数

最大独立集数≤最小团覆盖数

证明最大独立集数<=最小团覆盖数:最大独立集中的每一个节点必定都至少需要一个团来覆盖。弦图的概念弦(chord):连接环中不相邻的两个点的边。

弦图(chordalgraph):一个无向图称为弦图当图中任意长度大于3的环都至少有一个弦。

弦图的每一个诱导子图一定是弦图。弦图的任一个诱导子图不同构于Cn(n>3)

弦图的判定[例题]Zju1015Fishingnet

给定一个无向图,判定它是否为弦图。

单纯点(simplicialvertex):设N(v)表示与点v相邻的点集。一个点称为单纯点当{v}+N(v)的诱导子图为一个团。

弦图的判定[例题]Zju1015Fishingnet

给定一个无向图,判定它是否为弦图。

单纯点(simplicialvertex):设N(v)表示与点v相邻的点集。一个点称为单纯点当{v}+N(v)的诱导子图为一个团。

弦图的判定[例题]Zju1015Fishingnet

给定一个无向图,判定它是否为弦图。

单纯点(simplicialvertex):设N(v)表示与点v相邻的点集。一个点称为单纯点当{v}+N(v)的诱导子图为一个团。

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

引理的证明該图为4个点的唯一弦图,其他的弦图可以视为在它的上面增加若干个三角形,增加若干条弦构成,每增加一个三角形都使得单纯点数不降,没多增加一条弦实际上都是将两个弦图重叠,单纯点数不降。弦图的判定完美消除序列(perfecteliminationordering)

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

定义:一个点的序列(每个点出现且恰好出现一次)v1,v2,…,vn满足vi在{vi,vi+1,…,vn}的诱导子图中为一个单纯点。v6v5v4v3v2v1弦图的判定定理:一个无向图是弦图当且仅当它有一个完美消除序列。弦图的判定定理:一个无向图是弦图当且仅当它有一个完美消除序列。证明:充分性

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

必要性

反证若无向图存在一个长度>3的无弦环,不妨设环中在完美消除序列中出现在最前面的点为v,设环中v与v1,v2相连,根据完美消除序列的性质知v1,v2相连,与环无弦矛盾。所以无向图为弦图。MCS算法最大势算法MaximumCardinalitySearch

从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。

设label[i]表示第i个点与多少个已标号的点相邻,每次选择label[i]最大的未标号的点进行标号。MCS算法最大势算法MaximumCardinalitySearch

从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。

设label[i]表示第i个点与多少个已标号的点相邻,每次选择label[i]最大的未标号的点进行标号。i=70010001MCS算法最大势算法MaximumCardinalitySearch

从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。

设label[i]表示第i个点与多少个已标号的点相邻,每次选择label[i]最大的未标号的点进行标号。i=60020011MCS算法最大势算法MaximumCardinalitySearch

从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。

设label[i]表示第i个点与多少个已标号的点相邻,每次选择label[i]最大的未标号的点进行标号。i=50120021MCS算法最大势算法MaximumCardinalitySearch

从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。

设label[i]表示第i个点与多少个已标号的点相邻,每次选择label[i]最大的未标号的点进行标号。i=40220121MCS算法最大势算法MaximumCardinalitySearch

从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。

设label[i]表示第i个点与多少个已标号的点相邻,每次选择label[i]最大的未标号的点进行标号。i=31220221MCS算法最大势算法MaximumCardinalitySearch

从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。

设label[i]表示第i个点与多少个已标号的点相邻,每次选择label[i]最大的未标号的点进行标号。i=22220221MCS算法最大势算法MaximumCardinalitySearch

从n到1的顺序依次给点标号(标号为i的点出现在完美消除序列的第i个)。

设label[i]表示第i个点与多少个已标号的点相邻,每次选择label[i]最大的未标号的点进行标号。i=12220221MCS算法弦图的判定判断一个序列是否为完美消除序列弦图的判定判断一个序列是否为完美消除序列朴素的算法依次判断{vi+1,…,vn}中所有与vi相邻的点是否构成了一个团。时间复杂度:弦图的判定判断一个序列是否为完美消除序列优化后的算法设{vi+1,…,vn}中所有与vi相邻的点依次为vj1,

…,vjk。只需判断vj1是否与vj2,

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

…,vjk。只需判断vj1是否与vj2,

…,vjk相邻即可。时间复杂度: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个极大团。如何找到弦图的所有极大团呢?即判断每个是否为极大团弦图的极大团判断是否为极大团弦图的极大团设A=,若存在B=使得

则A不是极大团。

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

则A不是极大团。

p(w)<p(v)

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

则A不是极大团。

p(w)<p(v)

设next(v)表示N(v)中最前的点。令w*表示所有满足

的w中最后的一个点。判断是否为极大团弦图的极大团设A=,若存在B=使得

则A不是极大团。

p(w)<p(v)

设next(v)表示N(v)中最前的点。令w*表示所有满足

的w中最后的一个点。next(w*)=v(否则next(w*)也是满足条件的w)Next(w)=v

当且仅当

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

当且仅当

|N(v)|+1≤|N(w)|弦图的极大团只需判断是否存在一个w,满足Next(w)=v且|N(v)|+1≤|N(w)|即可。时间复杂度:O(m+n)弦图的点染色问题用最少的颜色给每个点染色使得相邻的点染的颜色不同。[例题]

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

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

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

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

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

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

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

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

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

HNOI2008《神奇的国度》证明:

设使用了T种颜色,则T≥色数

T=团数≤色数

团数=色数=T

时间复杂度:

O(m+n)弦图的点染色问题用最少的颜色给每个点染色使得相邻的点染的颜色不同。[例题]

HNOI2008《神奇的国度》证明:

设使用了T种颜色,则T≥色数

T=团数≤色数

团数=色数=T

时间复杂度:

O(m+n)团数=色数!!!

弦图的最大独立集和最小团覆盖最大独立集

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

选择最多的点使得任意两个点不相邻。Sol

完美消除序列从前往后能选就选。v6v5v4v3v2v1弦图的最大独立集和最小团覆盖最小团覆盖

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

用最少个数的团覆盖所有的点。Sol

设最大独立集为{p1,p2,…,pt},则{p1∪N(p1),

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

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

t≤{p1∪N(p1),

…,pt∪N(pt)}为一个团覆盖。

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

t≤{p1∪N(p1),

…,pt∪N(pt)}为一个团覆盖。

t≥由

知最大独立集数=最小团覆盖数!!!

区间图区间图(IntervalGraph)定义

给定一些区间,定义一个相交图为每个顶点表示一个区间,两个点有边当且仅当两个区间的交集非空。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论