第1章-图和子图课件

上传人:494895****12427 文档编号:240920600 上传时间:2024-05-17 格式:PPT 页数:66 大小:946.84KB
返回 下载 相关 举报
第1章-图和子图课件_第1页
第1页 / 共66页
第1章-图和子图课件_第2页
第2页 / 共66页
第1章-图和子图课件_第3页
第3页 / 共66页
点击查看更多>>
资源描述
第一章 图的基本概念第一章 图的基本概念1v1.1 图的概念v1.2 同构v1.3 图的矩阵和顶点的度v1.4 子图v1.5 路和连通性 v1.6 圈v1.7 最短路问题 1.1 图的概念21.1 图的概念1.1 图的概念3lKnigsberg七桥问题l电网络 l四色猜想第1章-图和子图课件4图图 G=(V(G),E(G),其中 V(G)=V-顶点集,-顶点数 E(G)=E-边集,-边数例如,下图中,V=a,b,f,E=k,p,q,ae,af,ce,cf defG=(V,E)p q abc k 图 G=(V(G),E(G),其中defG=5v注意注意,右图仅仅是图G的一个几何实现几何实现(geometric realization,代表代表representation),它们有无穷多个,随顶点位置及边的形状而不同。真正的图G是上面所给出式子,它与顶点的位置、边的形状等无关。不过今后对图G及其几何实现几何实现将经常不加以区别。defG=(V,E)p q abc k 注意,右图仅仅是图G的一个几何实现(geometric r6v称 边 ad 与顶点a(及d)相关联相关联(incident)。也称顶点 b(及 f)与边 bf 相关联相关联。v称顶点a与e 相邻相邻(adjacent)。也称有公共端点的一些边,例如 p与af彼此相邻相邻。v称一一条边的两个顶点为它的两个端点端点v环环(loop,selfloop):如边 k,它的两个端点相同。v棱棱(link):如边ae,它的两个端点不相同。v重边重边:如边p及边q。v简单图简单图:(simple graph)无环,无重边v平凡图平凡图:仅有一个顶点的图。v注意注意:任何一图都有:任何一图都有 V 。v记号记号:(,)defG=(V,E)p q abc k 称 边 ad 与顶点a(及d)相关联(incident)7例题例题v1.1 若G为简单图,则 。v1.2 若一群人中,凡相识的两人都无公共朋友,凡不相识的两人都恰有两个公共朋友,则每人的朋友数相等。例题81.2 同构1.2 同构9例如在下图中,称 图G恒等恒等于图H(记为 G=H)VG)=V(H),E(G)=E(H)。a y zx wb c d e G=(V,E)x d w a b c y e z F=(V,E)x w b c d e a yz H=(V,E)例如在下图中,称 a y zx wb c d e 10图G同构同构于图F (记为 G F)V(G)与V(F),E(G)与E(F)之间各各存在一 一映射,及且这二映射保持关联关联关系,即:a y zx wb c d e G=(V,E)x w b c d e a yz H=(V,E)x d w a b c y e z F=(V,E)图G同构于图F (记为 G F)a 11注注 两个图同构是指”它们有相同的结构”,仅在顶点及边的标号上或两个图的画法上有 所不同而已。往往将同构慨念引伸到非标号图中,以表达两个图在结构上是否相同。注注 判定两个图是否同构是个未解决的困难问题(open problem)。a y zx wb c d e G=(V,E)x w b c d e a yz H=(V,E)x d w a b c y e z F=(V,E)注 两个图同构是指”它们有相同的结构”,仅在顶点及边的标号上12v完全图完全图(complete graph)Knv空图空图(empty g.)E=。V(V)为独立集独立集 V中任二顶点都互不相邻。v二部图二部图(偶图偶图,bipartite g.)G=(X,Y;E)存在 V(G)的一个 2-划分划分(X,Y)(即V(G)=X Y,且XY=),使X与Y 都是独立集。K1K2K3K4K5完全图(complete graph)KnK1K2K3K13v完全二部图完全二部图 Km,n 二部图G=(X,Y;E),其中X和Y之间的每对顶点都相邻,且 X=m,Y=n。v类似地可定义,完全三部图完全三部图(例如,Km,n,p),完完全全 n-部部 图图等。二部图K3,3K1,5K2,2,2完全二部图 Km,n 二部图G=(X,Y;14v例。用标号法判定二部图用标号法判定二部图。用红蓝两种颜色进行顶点标号如下:任取一顶点v 标以红色。再将v的所有相邻顶点都标以兰色。这时称v为已扫描顶点。若尚存在一已标号未扫描顶点u,将它的所有相邻顶点,(若不出现矛盾)都标以(其相异色)红色,并称u为已扫描顶点。如此继续下去,直到或者所有顶点都已标号,从而该图为一二部图;或者在标号过程中出现矛盾,该图为非二部图。例。用标号法判定二部图。用红蓝两种颜色进行顶点标号如下:任取15习题1.2.1 G H (G)=(H),(G)=(H)。并证明其逆命题不成立。1.2.2 证明下面两个图不同构:习题1.2.1 G H (G)=(H16v1.2.3 证明下面图1与图2是同构的;而图1与图3是不同构的:v1.2.4 证明两个简单图G和H 同构 存在一 一映射 f:V(G)V(H),使 得 uv E(G)当且仅当 f(u)f(v)E(H)。图1 图2 图3 1.2.3 证明下面图1与图2是同构的;而图1与图3是17v1.2.5 证明:(a).(Km,n)=mn;(b).对简单二部图有 2/4.v1.2.6 记Tm,n为这样的一个完全m-部图:其顶点数为n,每个部分的顶点数为n/m 或n/m个。证明:(a).(Tm,n)=其中 k=n/m.(b)*.对任意的n顶点完全m-部图G,一定有(G)(Tm,n),且仅当G Tm,n 时等式才成立。v1.2.7 所谓k-方体方体是这样的图:其顶点是由0与1组成的有序有序k-元组元组,其二顶点相 邻当且仅当它们恰有一个坐标不同。证明k-方体有2k个顶点,k*2 k-1条边,且是一偶图。1.2.5 证明:(a).(Km,n)=mn18v1.2.8 简单图G的补图补图G c 是指和G有相同顶点集V的一个简单图,在G c中两个 顶点相邻当且仅当它们在G中不相邻。(a).画出Kcn和 Kcm,n。(b).如果G G c则称简单图G为自补的自补的。证明:若G是自补的,则 0,1(mod 4)。v1.2.9 设 ,且 ,则H一定是个完全二部图。v1.2.10若 的简单图 中如下性质成立 则G一定是个完全(某)m部图。1.2.8 简单图G的补图G c 是指和G有相同顶点集V191.3 图的矩阵和顶点的度1.3 图的矩阵和顶点的度20M(G)=mi,j,(关联矩阵)mi,j=顶点vi与边ej 的关联次数=0,1,2.e1e2e3e4e5e6v1v2v3v4G=(V,E)e7M(G)=mi,j,(关联矩阵)e1e2e21A(G)=ai,j,ai,j=连接顶点vi 与 vj 的边数。(邻接矩阵)A(G)=ai,j,ai,j=连接顶点vi22v顶点 v的 度度 dG(v)=G中与顶点v 相关联边数。(每一环记为2)v记号:最大、最小度最大、最小度 ,。((G),(G))v奇点奇点:度为奇数的顶点;v偶点偶点:度为偶数的顶点;v孤立点孤立点:度为0的顶点;v悬挂点悬挂点:度为1的顶点;v悬挂边悬挂边:悬挂点的关联边。顶点 v的 度 dG(v)=G中与顶点v 相关联边23v定理定理1.3.1(hand shaking lemma)任一图中,v推论推论1.1 任一 图中,度为奇数顶点的个数为偶数。定理1.3.1(hand shaking lemma)24例:任一多面体中,边数为奇数的外表面的数目为偶数。(提示:作一图,其顶点对应于多面体的面,且二顶点相邻当且仅当对应的两个面相邻(即有公共边界)。)k-正则图正则图(k-regular g.)0-正则图1-正则图2-正则图3-正则图例:任一多面体中,边数为奇数的外表面的数目为偶数。0-正则图25习题v1.3.1 证明:2/。v1.3.2 若 k-正则偶图(k 0)的2-划分为(X,Y),则 X=Y。v1.3.3 在人数 1的人群中,总有二人在该人群中有相同的朋友数 习题1.3.1 证明:2/。26v1.3.4 设V(G)=,则称(d(v1),d(v2),d(v)为G的度序列度序列。证明:非负整数序列(d1,d 2,d n)为某一图的度序列 是偶数。v1.3.5 证明:任一 无环图G都包含一偶生成子图H,使得 dH(v)dG(v)/2 对所有v V 成立。(提示:考虑G的边数最多的偶生成子图)v1.3.6*设平面上有n个点,其中任二点间的距离 1,证明:最多有 3n对点的距离=1。1.3.4 设V(G)=,则称271.4 子图1.4 子图28v子图子图(subgraph)H G V(H)V(G),E(H)E(G)。v真子图真子图 H G H G 且HG。母图母图(super graph)。v生成子图生成子图(spanning subg.)H H G 且V(H)=V(G)。v生成母图生成母图。v基础简单图基础简单图(underlying simple g.):从一图中去掉其所有重边及环后所得的剩余(简单图)图称之为其基础简单图。v导出子图导出子图(induced subgraph.)GV,(非空非空 V V)以V为顶点集,以G中两端都在V上的边全体为边集构成的G的子图 v边导出子图边导出子图 GE (非空非空E E)以E为边集,以E中所有边的端点为顶点集的的子图。子图(subgraph)H G V(H)29GV,GE 两种子图对应于取子图的两种基本运算。下面是取子图的另两种基本运算:vG-V 去掉V及与V相关联的一切边所得的剩余子图。即 GV VvG-E 从中去掉E 后所得的生成生成子图 fea bc dghG=(V,E)x wvyuGu,w,x Gu,w,x,y Gc,d,eGf,c GV,GE 两种子图对应于取子图的两种基本运算30v例。G-b,d,g,(=GE b,d,g )G-b,c,d,g,(GE b,c,d,g )G-a,e,f,g.(GE a,e,f,g )注意注意 GE E 与G-E 虽有相同的边集,但两者不一定相等:后者一定是生成子图,而前者则不然。fea bc dghG=(V,E)x wvyubc dhx wvyufeac hxwvyuxfeahwvyu例。G-b,d,g,(=GE 31v上述四种运算是最基本的取子图运算,今后经常会遇到,一定要认真掌握好认真掌握好。关于子图的另一些定义还有:G+E 往G上加新边集E 所得的(G的)母图。为简单计,今后将 G e 简记为 G e;G-v 简记为 G-v。设 G1,G2 G,称G1与G2为v 不相交不相交的(disjiont)V(G1)V(G2)=(E(G1)E(G2)=)v 边不相交边不相交(edge-distjiont,边不重的边不重的)E(G1)E(G2)=。(但这时G1与G2仍可能为相交的相交的)。v 并图并图 G1G2,当不相交时可简记为 G1+G2.v 交图交图 G1 G2.上述四种运算是最基本的取子图运算,今后经常会遇到,一定要认真32习题v1.4.1 证明:完全图的每个导出子图是完全图;偶图的每个导出子图是偶图。v1.4.2*设G为一 简单 图,1 n -1。证明:若 4,且G中每个n顶点的导出子图均有相同的边数,则 G K或 Kc。习题1.4.1 证明:完全图的每个导出子图是完全图;偶图33 1.5 路和连通性路和连通性 1.5 路和连通性34v途径途径(walk)例如图G的(u,x)-途径 W=ueyfvgyhwbvgydxdydx (有限非空序列)=uyvywvyxyx (简写法-当不引起混淆时)uvyxweabdhcfg途径(walk)uvyxweabdhcfg35v起点起点(origin)u 。v终点终点(terminus)x。v内部顶点内部顶点(internal vertex)y,v,w,x。(注意,中间出现的x也叫内部顶点。)v长长 边数(重复计算)。v节节(段段,section)。例如W的(y,w)-节=yvw。vW-1(逆途径),vWW(两条途径W与W相衔接衔接。要求:W的终点=W的起点)。v迹迹(trail)边各不相同的途径(顶点可重复出现)。例如,yvwyx。v路路(path)顶点各不相同的途径。(边也一定不重复出现。路可当作一个图或子图)。例如,yvwx。v距离距离 dG(u,v)=图G中顶点u与v之间最短路的长。uyvywvyxyx起点(origin)u 。uyvywvyxyx36定理1.5.1 G中存在(u,v)-途径 G中存在(u,v)-路。证明:是显然的;:设G中存在 -途径 其中 若W中的顶点互不相同,则W就是(u,v)-路;不然,设其中有 (),则 也是一条 -途径,长度比W短。若其中仍有重复顶点出现,则继续上述过程。由于W 长度的有限性,上述过程必停止于一(u,v)-路。定理1.5.1 37。图 G 图的连通性:称G中顶点u与与v为连通的为连通的(connected)G中存在(u,v)-路 (G中存在(u,v)-途径。)容易验证,V上的连通连通性是V上的等价关系等价关系,它将 V划分为一些等价类:V1,V使每个Vi中的任二顶点都连通连通(即存在(u,v)-路);而不同Vi与Vj之间的任二顶点都不连通连通。图G 图的连通性:称G中顶点u与v为连通的(connec38v称每个 GVi i=1,2,.为G的一个分支分支(component);称(G)为G的分支数分支数。v称 G为连通图连通图 (G)=1 G中任两点间都有一 条路相连。v称 G为非连通图非连通图 (G)1。称每个39v记号:记号:对任一非空 SV,令 =VS,记 S,=G中两端分别在S及 中的一切边的集合。(后文中将称为边割边割)记号:对任一非空 SV,令 =VS,记40容易证明:v定理1.5.2 G连通 对任 S V 都有 S,v例1.5 简单图G中,k G中有长 k 的路。(注意到,G中任一最长路P的起点(终点)的所有邻接点全在P上。)容易证明:41习题v1.5.1 证明:G中长为k的 途径的数目,就是A k 中的(I,j)元素,其中A为G的 邻接矩阵。v1.5.2 证明:对简单图G有,G连通。对于 1,试给出 的不连通简单图。v1.5.3 证明简单图G中,/2-1 G连通。当是偶数时,试 给 出 一个不连通的(/2-1)正则简单图。习题1.5.1 证明:G中长为k的 途径的数目42v1.5.4 G不连通 Gc 连通。v1.5.5 对任意图G的任一边e,有(G)(G-e)(G)+1 。v1.5.6 G连通,且 d(v)=偶数,v V (G-v)d(v)/2,v V.v1.5.7 连通图中,任二最长路必有公共顶点。v1.5.8 对任一图的任三个顶点 u,v,w 都有 d(u,v)+d(v,w)d(u,w)。v1.5.9 任一的简单、连通、非完全图中,一定有三个顶点 u,v,w,使得uv,vw E 而 uw E。v1.5.10若图G 中恰有两个奇点u与v,则G中一定有一(u,v)路。1.5.4 G不连通 Gc 连通。431.6 圈1.6 圈44v闭途径闭途径(closed walk)起点=终点 且长长 0 的途径。v闭迹闭迹(closed trail)边各不相同的闭途径。v圈圈(cycle)顶点各不相同的闭迹。(可当作一图或子图。)闭途径(closed walk)起点=终点 且长 45例:v闭途径:uyvyu;uywxywvu;uyuyu。v闭迹:uyxwyvu。v圈:yfvgy;uywvu。vk-圈圈(k-cycle)长为k的圈。v奇圈奇圈(odd cycle)。v偶圈偶圈(even cycle)。uvyxweabdhcfg例:uvyxweabdhcfg46例:v1-圈(即一条环环),v2-圈(由两条重边组成),v3-圈(又称三角形)。三角形)。例:47定理定理1.2 G 为二部图 G不含奇圈。证明:设G的2-划分为(X,Y),由G的定义,G的任一圈中,X和Y的顶点一定交错出现,从而其长必为偶数。:不妨设G为 连通的。任取一顶点u,令 X=xV d(u,x)=偶数,Y=yV d(u,y)=奇数。易见,(X,Y)为V的2-划分,定理1.2 G 为二部图 G不含奇圈。证明:48所以只要再证X(和Y)都是G的独立集(即X(或 Y)中任二顶点v,w都不相邻)即可。令P与Q分别为最短(u,v)-路与最短(u,w)-路。设u为P与Q的最后一个公共顶点;而 P与Q分别为P的(u,v)-节与Q的(u,w)-节。则P与Q只有一公共顶点。又,由于P与Q的(u,u)-节的长相等,P与Q的长有相同的奇偶性,因此v与w不能相邻,不然,v(P)1 Qwv 将是一奇圈,矛盾。PQuP Quvw所以只要再证X(和Y)都是G的独立集(即X(或 Y)中任二49容易证明:v命题1 图G中 2 G中含圈。v命题2 简单图G,2 G含长 +1 的圈。(提示:以上两例中可考虑其最长路)v命题3 任一图G中 G含圈。证明:反证,假设结论不成立,而G为其最小反例。则首先G是连通的,且 。再由以上第一例知,G中存在一顶点u,。于是,且显然G-u中也不含圈,从而G-u也是个反例,但顶点数比G少,矛盾。容易证明:50习题v1.6.1 若边e在G的一闭迹中,则e在G的一圈中。v1.6.2 证明:(a).G含圈。(b)*.+4 G含两个边不重的圈。v1.6.3 证明:任一连通偶图G=(X,Y)的2-划分 (X,Y)是唯一的。(提示:不然,必有二顶点u,v,原属同一部(例如,)X,而在另一种2-划 分 则不然。)习题1.6.1 若边e在G的一闭迹中,则e在G的一圈中。51v1.6.4证明或反证:(1).G中有两个不同的(u,v)路,则G中含一圈。(2).G中有一闭途径,在则G中含一圈。(3).G中有一长为奇奇数的闭途径,在则G中含一奇圈。v1.6.5 设图G 的顶点可用两种颜色进行着色,使每个顶点都至少与两个异色顶点邻,则G中一定包含偶圈。v1.6.6座位的教室中,不可能让每个学生都作一上下左右移动,使每个人都换了座位。(提示:“座位图”是 一二部图)1.6.4证明或反证:521.7 最短路问题1.7 最短路问题53v赋权图赋权图(weighted graph)G (注:权 1 时即为上文中所提的图。)v权权(weight)w(e)0.记号:w(H)=,H G.v路路P的长的长=w(P)v顶点u与v的 距离距离 d(u,v)=最短(u,v)-路的长。赋权图(weighted graph)G (注:权 54v问题问题 求最短(u0,v0)-路。v转转 求最短(u0,v)-路,v V u0.v简化简化 只考虑简单图,且w(e)0 e E.(w(uv)=0 时,可合并u与v为一 顶点)。问题 求最短(u0,v0)-路。55v原理原理 逐步求出顶点序列 u1,u2,.使 d(u 0,u1)d(u 0,u2).记 S0=u0,Sk=u 0,u1,u k,=V S 。Pi 为最短(u0,ui)-路 i=1,2,(1).求u1:u1是使 w(u0 u1)=min w(u0v)v u 0 者.得 S1=S0 u1,P1=u 0u1.原理 逐步求出顶点序列56(2).若已求得Sk-1;d(u0,u1),d(u0,uk-1);及最短(u0,ui)路 Pi ,i=1.2,.,k-1。求uk:显然,d(u0,uk)=min d(u0,v)v =d(u0,uj)+w(u ju k)某 j 1,2,,k-1 =min d(u0,u)+w(uu k)u S k-1 =mind(u0,u)+w(uv)u S k-1,v =min l(v)v 其中,l(v)=min d(uo,u)+w(uv)u S k-1 (l(uk)=d(u0,uk)(2).若已求得Sk-1;d(u0,u1),d57 Sk=Sk-1 uk ,Pk=Pj ujuk 某 j 1,2,k-1 。update 进行下一 步时,只要更新 l(v)即可:l(v)min l(v),l(uk)+w(ukv)对 v Sk=Sk-1 uk ,58Dijkstra算法算法v(1).作为开始:l(u0)0;l(v);v u0;S0 u0;k 0.v(2).(这时已有Sk=u0,u1,uk)l(v)min l(v),l(uk)+w(ukv)v 再计算 min l(v),设其最小值点为 uk+1,令 Sk+1 =Sk uk+1。v(3).若 k=-1,停止;不然,令kk+1,并回到(2)。Dijkstra算法(1).作为开始:l(u0)0;59计算复杂性 加法:(-1)/2 比较:(-1)/2 2 v :(-1)2+)_ 共 O(2)第1章-图和子图课件60凡是复杂性为 p(,)的算法(p(.,.)为一多项式)称为“好算法好算法”(“good algorithm”-J.Edmonds)。这是相对于指指数型算法数型算法而言的:在10-6秒/步运算速度下:由上表可见,两种算法有天壤之别。凡是复杂性为 p(,)的算法(p(.,61注注v1.若只关心求d(u0,v0),则算法进行到v0Sk时停止。v2.计算过程中,每步所得子图都是一 棵树树(?:每步每步都是往其上增加一条边及一一条边及一 个顶点个顶点)。因此该过程称为 tree growing procedure。在该树中的(u0,v0)-路,是中最短(u0,v0)-路。v 3.若要计录u0到每个顶点u的最短路,只要记录该路中u的前一个顶点(即该树中u的父亲)即可。注6272213217353444866u0停例72213217353444866u0停例63精品课件精品课件!精品课件!64精品课件精品课件!精品课件!65习题v1.7.1 描述一个算法以确定 (a).一图的各个分支;(b).一图的围长围长(即最短圈的长);并说明你的算法好到什么程度。习题1.7.1 描述一个算法以确定66
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学培训


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!