图论总结超强大.docx
- 文档编号:25407111
- 上传时间:2023-06-08
- 格式:DOCX
- 页数:44
- 大小:249.62KB
图论总结超强大.docx
《图论总结超强大.docx》由会员分享,可在线阅读,更多相关《图论总结超强大.docx(44页珍藏版)》请在冰豆网上搜索。
图论总结超强大
图论总结(超强大)
-标准化文件发布号:
(9556・EUATWK・MWUB-WUNN・INNUL-DDQTY-KII
1.图论GraphTheory
1丄定义与术语DefinitionandGlossary
1.1.1.图与网络GraphandNetwork
1.1.2.图的术语GlossaryofGraph
1.1.3.路径与回路PathandCycle
1.1.4.连通性Connectivity
1.1.5.图论中特殊的集合Setsingraph
1.1.6.匹配Matching
1.1.7.树Tree
1.1.8.组合优化Combinatorialoptimization
12图的表示Expressionsofgraph
1.2.1.邻接矩阵Adjacencymatrix
1.2.2.关联矩阵Incidencematrix
1.2.3.邻接表Adjacencylist
1.2.4.弧表Arclist
1.2.5.星形表示Star
1・3・图的遍历Travelingingraph
1.3.1.深度优先搜索Depthfirstsearch(DFS)
1.3.1.1・概念
1.3.1.2・求无向连通图中的桥Findingbridgesinundirectedgraph
1.3.2.广度优先搜索Breadthfirstsearch(BFS)
14拓扑排序Topologicalsort
1.5.路径与回路Pathsandcircuits
1.5.1.欧拉路径或回路Eulerianpath
1.5.1.1.无向图
1.5.1.2.有[句图
1.5.13.7昆合图
1.5.1.4・无权图Unweighted
1.5.1.5・有权图Weighed—中国邮路问题TheChinesepostproblem
1.5.2.HamiltonianCycle哈氏路径与回路
1.5.2.1.无权图Unweighted
1.5.2.2・有权图Weighed—旅行商问题Thetravellingsalesmanproblem
1.6.网络优化Networkoptimization
1.6.1.最小生成树Minimumspanningtrees
1.6.1.1.基本算法Basicalgorithms
1.6.1.1.1.Prim
1.6.1.1.2.Kruskal
1.6.1.1.3・Sollin(Boruvka)
1.6.1.2.扩展模型Extendedmodels
1.6.1.2.1.度限制生成树Minimumdegree-boundedspanningtrees
1.6.1.2.2.k小生成树Thekminimumspanningtreeproblem(k-MST)
1.6.2.最短路Shortestpaths
1.6.2.1.单源最短路Single-sourceshortestpaths
1.6.2.1.1.基本算法Basicalgorithms
1.6.2.1.1.1Dijkstra
1.6.2・1・1.2Bellman-Ford
1.6.2.1.1.2.1Shortestpathfasteralgorithm(SPFA)
1.6.2.1.2.应用Applications
1.6.2.1.2.1差分约束系统Systemofdifferenceconstraints
1.6.2.1.2.2有向无环图上的最短路ShortestpathsinDAG
1.6.2.2.所有顶点对间最短路Al1-pairsshortestpaths
1.6.2.2.1基本算法Basicalgorithms
1.6.2.2.1.1Floyd-Warshall
1.6.
Johnson
2.2.1.2
1.6.3
网络流Flownetwork
1.6.3.1.最大流Maximumflow
1.6.3.2.
最小费用流Minimumcostflow
找最小费用路Findingminimumcostpath
1.6.3.2.2找负权圏Findingnegativecircle
1.6.3.2.3网络单纯形Networksimplexalgorithm
1.6.4匹酉己Matching
1.6.4.1.二分图BipartiteGraph
1.6.4.1.1.无权图-匈牙利算法Unweighted-HopcroftandKarpalgorithm
1.6.4.1.2...带权图-KM算法Weighted-Kuhn-Munkres(KM)algorithm
1.6.4.2.一般图GeneralGraph
1.6.4.2.1无权图-带花树算法Unweighted-Blossom(Edmonds)
1.图论GraphTheory
1.1.定义与术语DefinitionandGlossary
1.1.1.图与网络GraphandNetwork
二元组(H,E)称为图(graph)V为结点(node)或顶点(vertex)集。
E为V中结点之间的边的集合。
点对称为边(edge)或称弧(arc)»其中w,veV»称","是相邻的(adjacent)»称
u,v与边仏巧相关联(incident)或相邻。
若边的点对有序则称为有向(directed)边»其中u称为头(head),v称为尾
(tail)。
所形成的图称有向图(directedgraph)。
为对于u来说("「)是出边(outgoing
arc);对于v来说("「)是入边(incomingarc)°反之*若边的点对无序则称为无向(undirected)边‘所形成的图称无向图(undirectedgraph)。
若图的边有一个权值(weight)*则称为赋权边*所形成的图称赋权图(weightedgraph)或网络(network)。
用三元组G(V,E,W)表示网络。
其中W表示权集*它的元素与边集E——对应°
满足IE1<1VIlogIV160图,称为稀疏(sparse)图;反之,称为稠密(dense)图。
1.1.2.图的术语GlossaryofGraph
阶(order):
图G中顶点集V的大小称作图G的阶。
环(loop):
若一条边的两个顶点为同一顶点,则此边称作环。
简单图(simplegraph):
没有环、且没有多重弧的图称作简单图。
定向图:
对无向图G的每条无向边指定一个方向得到的有向图。
底图:
把一个有向图的每一条有向边的方向都去掉得到的无向图。
逆图:
把一个有向图的每条边都反向由此得到的有向图。
竞赛图(tournament):
有向图的底图是无向完全图,则此有向图是竞赛图。
邻域(neighborhood):
在图中与u相邻的点的集合{vlveeE}♦称为u的邻域»记为。
度:
度(degree):
一个顶点的度是指与该边相关联的边的条数,顶点v的度记作deg(v)。
握手定理:
无向图:
工deg(y)=2IEI;有向图:
工dcg+e)=》dcg-(”)-
i€Vv€lzveV
入度(indegree):
在有向图中,一个顶点v的入度是指与该边相关联的入边(即边的尾是v)的条数‘记作deg+(v)o
出度(outdegree):
在有向图中,一个顶点的出度是指与该边相关联的出边(即边的头是
v)的条数»记作deg"(v)o
孤立点(isolatedvertex):
度为0的点。
叶(leaf):
度为1的点。
源(source):
有向图中,deg+(v)=0的点。
汇(sink):
有向图中»deg~(v)=0的点。
奇点(oddvertex):
度为奇数的点。
偶点(evenvertex):
度为偶数的点。
子图:
子图(sub-graph):
G'称作图G的子图如果V(G')cU(G)以及E(Gr)cE(G)。
生成子图(spanningsub-graph):
即包含G的所有顶点的连通子图,即满足条件
V(G')=V(G)的G的子图G'。
生成树(spanningtree):
设T是图G的一个子图,如果T是一棵树,且V(T)=V(G),则称T是G的一个生成树。
即G的生成子图,且子图为树。
点导出子图(inducedsubgraph):
设VzcV(G),以W为顶点集,以两端点均在V冲的边的全体为边集所组成的子图,称为0的由顶点集W导出的子图,简称为0的点导出子图,记为G[Vr]o
边导出子图(edge-inducedsubgraph):
设E'uE(G)»以E'为顶点集»以两端点均在F中的边的全体为边集所组成的子图,称为0的由边集E'导出的子图,简称为0的边导出子图,记为G[Ef]。
图的补图(complement):
设0是一个图»以U(G)为顶点集,以{(«,v)l(w,v)^E(G)}为边集的图称为0的补图,记为旷-
点集的补集:
记V^V-V1为点集旷的补集。
特殊的图:
零图(nullgraph):
E=0,即只有孤立点的图阶零图记为N”。
平凡图(trivialgraph):
一阶零图。
空图(emptygraph):
V=E=0的图。
有向无环图(directedacyclicgraph(I)AG)):
有向的无环的图。
完全图(completegraph):
完全图是指每一对不同顶点间都有边相连的的无向图,n阶完全图常记作K”。
二分图(bipartitegi^aph):
若图0的顶点集可划分为两个非空子集/和厂即
V=X 完全二分图(completebipartitegraph): 二分图G中若任意两个X和Y中的顶点都有边相连,则这样的图称作完全二分图。 若I,则完全二分图G记作K”,”。 正则图(regulargraph): 如果图中所有顶点的度皆相等,则此图称为正则图。 1.1.3.路径与回路PathandCycle 途径(walk): 图G中一个点边交替出现的序列卩=%蛰代…,满足气",勺已E,气=锦弋)° 迹(trail): 边不重复的途径。 路(path): 顶点不重复的迹。 简单图中的路可以完全用顶点来表示,P=%气…气- 若P\=Pm'称闭的(closed);反之,称为开的(open)。 闭途径(closedwalk): 起点和终点相同的途径° 闭迹(closedtrail): 起点和终点相同的迹,也称为回路(circuit)。 圈(cycle): 起点和终点相同的路。 途径(闭途径)、迹(闭迹)、路(圈)上所含的边的个数称为它的长度(length)o简单图0中长度为奇数和偶数的圈分别称为奇圈(oddcycle)和偶圈(evencycle)°对任意u,veV(G)*从x到y的具有最小长度的路称为x到y的最短路(shortestpath)»其长度称为a•到y的距离(distance)»记为dG{u,v)。 图0的直径(diameter): D=max{dG(w,v)IV//,veV(G)}。 简单图0中最短圈的长度称为图0的围长(girth)>最长圈的长度称为图0的周长(perimeter)。 1.L4.连通性Connectivity 连通(connected): 在图G中*两个顶点间,至少存在一条路径,称两个顶点连通的(connected);反之‘称非连通(unconnected)。 强连通(stronglyconnected): 在有向图G中*两个顶点间,至少存在一条路径»称两个顶点强连通。 弱连通(weaklyconnected): 在有向图G中»两个顶点、间»若不考虑G中边的方向的图才连通的,称原有向图为弱连通。 连通图(connectedgraph): 图G中任二顶点都连通。 连通分量或连通分支(connectedbranch,component): 非连通无向图的极大连通子图(maximallyconnectedsub-graph)。 具体说»若图0的顶点集XQ可划分为若干非空子集X,岭,…,使得两顶点属于同一子集当且仅当它们在0中连通»则称每个子图G[%]为图0的一个连通分支(j=l,2,-,e)o图0的连通分支是0的一个极大连通子图。 图G连通当且仅当Ct>=\。 强连通分量(stronglyconnectedbranch): 非强连通图有向图的极大强连通子图。 割(cut): 点割集(vertexcut): 点集V'eV,若G刪除了V'后不连通,但删除了V’的任意真子集后G仍然连通。 则称旷点割集。 若某一结点就构成就了点割集,则称此结点割点(cutvertex)。 点数最少的点割集称为点连通度k(G)。 边割集(edgecutset): 边集E'eE,若G删除了E'后不连通,但删除了E'的任意真子集后G仍然连通。 则称E'点割集。 若某一边就构成就了边割集,则称此结点割边(cutedge)或桥(bridge)。 边数最少的边割集称为边连通度k'(G)。 记号[S,S‘]表示一端在S中另一端在S'中的所有边的集合。 块(block)是指没有割点的极大连通子图。 1.1.5.图论中特殊的集合Setsingraph 点覆盖(集)(vertexcovering(set)): V'eV,满足对于V eE»3veV»v关联e。 即一个点集,使得所有边至少有一个端点在集合里。 或者说是“点”覆盖了所有 “边”。 极小点覆盖(minimalvertexcovering): 本身为点覆盖»其真子集都不是。 最小点覆盖(minimumvertexcovering): 点最少的点覆盖。 点覆盖数(vertexcoveringnumber): 最小点覆盖的点数,记为av(G) 一般说覆盖集就是指点覆盖集。 边覆盖(集)(edgecovering(set)): E'eE,满足对于VveV»有3e^E'*e关联y。 即一个边集,使得所有点都与集合里的边邻接。 或者说是“边”覆盖了所有“点”。 极小边覆盖(minimaledgecovering): 本身是边覆盖»其真子集都不是°最小边覆盖(minimumedgecovering): 边最少的边覆盖。 边霾盖数(edgecoveringnumber): 最小边覆盖的边数,记为aE(G)o 独立集(independentset): V'eV,满足对于Vw,veV'»有(w,v)eE。 即一个点集»集合中任两个结点不相邻,则称W为独立集。 或者说是导出的子图是零图(没有边)的点集。 极大独立集(maximalindependentset): 本身为独立集»再加入任何点都不是。 最大独立集(maximumindependentset): 点最多的独立集。 独立数(independentnumber): 最大独立集的点、数,记为A(G)。 团(clique): V'eV,满足对于Vz/,veV'>有(w,v)eE。 即一个点集,集合中任两个结点相邻。 或者说是导出的子图是完全图的点集。 极大团(maximalclique): 本身为团»再加入任何点都不是°最大团(maximumclique): 点最多的团。 团数(cliquenumber): 最大团的点数»记为e(G)。 边独立集(edgeindependentset): E'eE,满足对于Ve,/eE'»有ej不邻接。 即一个边集,满足边集中的任两边不邻接。 极大边独立集(maximaledgeindependentset): 本身为边独立集»再加入任何边都不是。 最大边独立集(maximumedgeindependentset): 边最多的边独立集。 边独立数(edgeindependentnumber): 最: 大边独立集的边数,记为0")。 边独立集又称匹配(matching)»相应的有极大匹配(maximalmatching)»最大匹配(maximuinmatching)»匹配数(matchingnumber)。 支配集(dominatingset): V'eV,满足对于Vz/eV-V'♦有3veV*»(w,v)eE。 即一个点集,使得所有其他点至少有一个相邻点在集合里。 或者说是一部分的“点”支配了所有“点”。 极小支配集(minimaldominatingset): 本身为支配集»其真子集都不是。 最小支配#(minimumdominatingset): 点最少的支配集°支配数(dominatingnumber): 最小支配集的点数»记为"(G)o 边支配集(edgedominatingset): ,满足对于V^eE-E'»有3/'e£'»e,/邻 接。 即一个边集,使得所有边至少有一条邻接边在集合里。 或者说是一部分的“边”支配了所有“边”。 极小边支配集(minimaledgedominatingset): 本身是边支配集»其真子集都不是。 最小边支配集(minimumedgedominatingset): 边最: 少的边支配集°边支配数(edgedominatingnumber): 最小边支配集的边数*记为YE(G)。 定理: 若G中无孤立点,I)为支配集,则D=V(G)-D也是一个支配集。 定理: 一个独立集是极大独立集,当且仅当它是支配集。 关系: 定理: 无向图G无孤立点,%是极小支配集,则存在岭是极小支配集,且%6岭=0o 定理: 无向图G无孤立点,V'是极大独立集,则V’是极小支配集。 逆命题不成立。 A(G)>/v(G)。 定理: 连通图中,V'是点覆盖,则厂是支配集。 极小点覆盖不一定是极小支配集。 支配集不一定是点覆盖。 定理: 无向图G无孤立点,旷是(极,最小)点覆盖,充要于V-V是(极,最大)独立 集。 q,(G)+A,(G)=IUIo 定理: 无向图G,旷是G的(极,最大)团,充要于V'是乙的(极,最大)独立集。 负g)=a‘(g)。 由上述定理知,av{G),A,(G),负G)三者互相确定,但都是NPC的。 但是二分图中,点覆盖数是匹配数。 M是匹配,W是边覆盖,N是点覆盖,Y是点独立集。 定理: 无向图G无孤立点»M: <=|N|,IY! <=W 定理: 无向图G无孤立点,处(G)+0£(G)=IHIo先取一个最大匹配M,1条边盖两个 点;剩下的一个未盖点要用一条边来覆盖,边覆盖数珂Ml+(|V|-2|M|)=|V|-|M|o 定理: 无向图G无孤立点,/7fc(G)-av{G),0y(G)=Q£(G)。 定理: 无向图G无孤立点,<y(G)=0y(G)。 求匹配数是P的,所以边覆盖和匹配都是易求的。 最小路径覆盖(pathcovering): 是“路径”覆盖“点”,即用尽量少的不相交简单路径覆盖有向无环图G的所有顶点,即每个顶点严格属于一条路径。 路径的长度可能为0(单个点)。 最小路径覆盖数=6的点数一最小路径覆盖中的边数。 应该使得最小路径覆盖中的边数尽量多,但是又不能让两条边在同一个顶点相交。 拆点: 将每一个顶点i拆成两个顶点Xi和Yi。 然后根据原图中边的信息,从X部往Y部引边。 所有边的方向都是由X部到Y部。 因此,所转化出的二分图的最大匹配数则是原图G中最小路径覆盖上的边数。 因此由最小路径覆盖数=原图G的顶点数一二分图的最大匹配数便可以得解。 LL匹配Matching 匹配(matching)是一个边集,满足边集中的边两两不邻接。 匹配又称边独立集(edgeindependentset)◊ 在匹配中的点称为匹配点(matchedvertex)或饱和点;反之,称为未匹配点(unmatchedvertex)或未饱和点。 交错轨(alternatingpath)是图的一条简单路径,满足任意相邻的两条边*一条在匹配内,一条不在匹配内° 增广轨(augmentingpath): 是一个始点与终点都为未匹配点的交错轨。 最大匹配(maximummatching)是具有最多边的匹配。 匹配数(matchingnumber)是最大匹配的大小。 完美匹配(perfectmatching)是匹配了所有点的匹配。 完备匹配(completematching)是匹配了二分图较小部份的所有点的匹配。 增广轨定理: 一个匹配是最大匹配当且仅当没有增广轨。 综上,在二分图中,最小覆盖数二最大匹配数。 边覆盖数=最大独立数卜最大匹配数。 1.1.7.树Tree G=(V,E)为一个图,则下列命题等价: (DG是一棵树; (2)G连通,且|E|=|V|-1;(3)G无圈,且|E|=|V|-1;(4)G的任何两个顶点之间存在唯一的一条路;(5)G连通,且将G的任何一条弧删去之后,该图成为非连通图;(6)G无圈,且在G的任何两个不相邻顶点之间加入一条弧之后,该图正好含有一个圈- Cayley公式: 在n阶完全图K”中,不同生成树的个数为nn~2。 1.1.&组合优化Combinatorialoptimization 从若干可能的安排或方案中寻求某种意义下的最优安排或方案,数学上把这种问题称为(最)优化(optimization)问题。 所谓组合(最)优化(combinatoria1optimization)又称离散优化(discrete optimization)»它是通过数学方法去寻找离散事件的最优编排、分组、次序或筛选等.这类问题可用数学模型描述为: minf(x) s.t.>0,xeD 其中I)表示有限个点组成的集合(定义域),f为目标函数,F={xlxeD,^(x)>0}为可行域。 网络优化(networkoptimization)就是研究与(赋权)图有关的组合优化问题。 常见的P类网络优化问题: 最小生成树,最短路,最大流,最小费用最大流,最大匹配,中国邮路问题O 常见的NP类网络优化问题: 旅行商问题。 参考文献: [ljDictionaryofAlgorithmsandDataStructuresNISThttp: //www.nist・gov/dads/ [2]Wikipedia,http: //en.wikipedia・org/wiki/Graph_theory [3]谢金星,淸华大学数学科学系《网络优化>>讲义 http: //faculty.math・tsinghua・edu.cn/-jxie/courses/netopt 1.2.图的表示Expressionsofgraph 下面介绍几种表示图的数据结构O并统一用下图做例子: L2.L邻接矩阵Adja
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 总结 超强
![提示](https://static.bdocx.com/images/bang_tan.gif)