图的基本概念及拓扑排序幻灯片.ppt
《图的基本概念及拓扑排序幻灯片.ppt》由会员分享,可在线阅读,更多相关《图的基本概念及拓扑排序幻灯片.ppt(53页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、图的基本概念及拓扑排序第1页,共53页,编辑于2022年,星期五什么是图?o什么是图?可用一句话概括,即:图是用点和线来刻划离散事物集合中的每对事物间以某种方式相联系的数学模型.因为它显得太抽象,不便于理解,所以有必要给出另外的回答.第2页,共53页,编辑于2022年,星期五1 1 图的基本术语图的基本术语图:图:记为记为 G(V,E)其中:其中:V 是是G的顶点集合,是有穷非空集;的顶点集合,是有穷非空集;E 是是G的边的边集合,是有穷集。集合,是有穷集。有向图:有向图:无向图:无向图:图图G G中的每条边都是有方向的;中的每条边都是有方向的;图图G G中的每条边都是无方向的;中的每条边都是
2、无方向的;v v若若若若 n n 个顶点的无向图有个顶点的无向图有个顶点的无向图有个顶点的无向图有 n n(n n-1)/2-1)/2 条边条边条边条边,称为称为称为称为无向完全图无向完全图无向完全图无向完全图v v若若若若 n n 个顶点的有向图有个顶点的有向图有个顶点的有向图有个顶点的有向图有n(n-1)n(n-1)条边条边条边条边,称为称为称为称为有向完全图有向完全图有向完全图有向完全图V=vertex E=edge第3页,共53页,编辑于2022年,星期五例:例:判断下列判断下列4种图形各属什么类型?种图形各属什么类型?无向无向无向图无向图(树树)有向图有向图有向有向完全图完全图完全图
3、完全图第4页,共53页,编辑于2022年,星期五稀疏图:稠密图:设有两个图设有两个图 G(V,E)和和 G(V,E)。若。若 V V 且且 E E,则称则称 图图G 是是 图图G 的子图。的子图。子 图:边较少的图。通常边数边较少的图。通常边数n2边很多的图。无向图中,边数接近边很多的图。无向图中,边数接近n n(n n-1)/2-1)/2;有向图中,边数接近有向图中,边数接近n n(n n-1)-1)补补 图:图:定义定义1:设图:设图G1=和图和图G2=是图是图G=的子图的子图.如果如果E2=E-E1且且G2=,则称图,则称图G2是相对于图是相对于图G的子图的子图G1的补图的补图.定义定义
4、2:给定图:给定图G=,若存在图,若存在图G1=,并且,并且E1E=和图和图是完全图,则是完全图,则G1称为相对于完全图的称为相对于完全图的G的补图,简称的补图,简称G1是是G的补图的补图.第5页,共53页,编辑于2022年,星期五 带权图:带权图:即边上带权的图。其中即边上带权的图。其中权权是指每条边可以标上具有某种是指每条边可以标上具有某种含义的数值(即与边相关的数)。含义的数值(即与边相关的数)。带权图带权图网网 络:络:路径:路径:在图在图在图在图 GG(V,E)(V,E)中中中中,若从顶点若从顶点若从顶点若从顶点 vi vi 出发出发出发出发,沿一些边经过一些顶点沿一些边经过一些顶点
5、沿一些边经过一些顶点沿一些边经过一些顶点 vp1,vp2,vpmvp1,vp2,vpm,到达顶点,到达顶点,到达顶点,到达顶点vjvj。则称顶点序列。则称顶点序列。则称顶点序列。则称顶点序列 (vi vp1 vp2.vpm vj)(vi vp1 vp2.vpm vj)为从顶点为从顶点为从顶点为从顶点vi vi 到顶点到顶点到顶点到顶点 vj vj 的路径。它经过的边的路径。它经过的边的路径。它经过的边的路径。它经过的边(vi,vp1)(vi,vp1)、(vp1,vp2)(vp1,vp2)、.、(vpm,vj)(vpm,vj)应当是属于应当是属于应当是属于应当是属于E E的边。的边。的边。的边。
6、非带权图的路径长度是指此路径上非带权图的路径长度是指此路径上非带权图的路径长度是指此路径上非带权图的路径长度是指此路径上 边的条数边的条数边的条数边的条数;带权图的路径长度是指路径上带权图的路径长度是指路径上带权图的路径长度是指路径上带权图的路径长度是指路径上各边的权之和各边的权之和各边的权之和各边的权之和。路径长度:路径长度:第6页,共53页,编辑于2022年,星期五连通图:连通图:在在在在无向无向无向无向图中图中图中图中,若从顶点若从顶点若从顶点若从顶点v v1 1到顶点到顶点到顶点到顶点v v2 2有路径有路径有路径有路径,则称顶点则称顶点则称顶点则称顶点v v1 1与与与与v v2 2
7、是是是是连通连通连通连通的。如果图中任意一对顶点都是连通的的。如果图中任意一对顶点都是连通的的。如果图中任意一对顶点都是连通的的。如果图中任意一对顶点都是连通的,则则则则称此图是称此图是称此图是称此图是连通图连通图连通图连通图。非连通图的极大连通子图非连通图的极大连通子图非连通图的极大连通子图非连通图的极大连通子图叫做叫做叫做叫做连通分量连通分量连通分量连通分量。强连通图:强连通图:在在在在有向有向有向有向图中图中图中图中,若对于每一对顶点若对于每一对顶点若对于每一对顶点若对于每一对顶点v vi i和和和和v vj j,都存在一条从都存在一条从都存在一条从都存在一条从v vi i到到到到v v
8、j j和和和和从从从从v vj j到到到到v vi i的路径的路径的路径的路径,则称此图是则称此图是则称此图是则称此图是强连通图强连通图强连通图强连通图。非强连通图的极大强连通子图非强连通图的极大强连通子图非强连通图的极大强连通子图非强连通图的极大强连通子图叫做叫做叫做叫做强连通分量强连通分量强连通分量强连通分量。第7页,共53页,编辑于2022年,星期五生成树:生成树:邻接点:顶点顶点v的度的度是与它相关联的边的条数。记作是与它相关联的边的条数。记作TD(v)。在在有向图有向图中中,顶点的度等于该顶点的顶点的度等于该顶点的入度入度与与出度出度之和。之和。顶点顶点 v 的入度的入度是以是以 v
9、 为终点的有向边的条数为终点的有向边的条数,记作记作 ID(v);顶点顶点 v 的出度的出度是以是以 v 为始点的有向边的条数为始点的有向边的条数,记作记作 OD(v)。若若(u,v)是是 E(G)中的一条边,则称中的一条边,则称 u 与与 v 互为互为邻接顶点邻接顶点度、入度和出度:是一个是一个是一个是一个极小连通子图极小连通子图极小连通子图极小连通子图,它含有图中全部顶点,但只有,它含有图中全部顶点,但只有,它含有图中全部顶点,但只有,它含有图中全部顶点,但只有n n-1-1条条条条边边边边。v v如果在生成树上添加如果在生成树上添加如果在生成树上添加如果在生成树上添加1 1条边,必定构成
10、一个环。条边,必定构成一个环。条边,必定构成一个环。条边,必定构成一个环。v v若图中有若图中有若图中有若图中有n n个顶点,却少于个顶点,却少于个顶点,却少于个顶点,却少于n n-1-1条边,必为非连通图。条边,必为非连通图。条边,必为非连通图。条边,必为非连通图。最小生成树:最小生成树:若无向连通带权图若无向连通带权图若无向连通带权图若无向连通带权图G=,TG=,T是是是是GG的一棵生成树,的一棵生成树,的一棵生成树,的一棵生成树,T T的各边权之和称为的各边权之和称为的各边权之和称为的各边权之和称为T T的的的的权,记做权,记做权,记做权,记做WW(T T),),),),GG的所有生成树
11、中权值最小的生成树称为最小生成树。的所有生成树中权值最小的生成树称为最小生成树。的所有生成树中权值最小的生成树称为最小生成树。的所有生成树中权值最小的生成树称为最小生成树。最小生成树算法:Prim算法和算法和kruskal算法算法第8页,共53页,编辑于2022年,星期五简单路径:路径上各顶点路径上各顶点 v v1 1,v,v2 2,.,v,.,vm m 均不互相重复。均不互相重复。回 路:例:例:若路径上第一个顶点若路径上第一个顶点 v v1 1 与最后一个顶点与最后一个顶点v vm m 重合,则重合,则称这样的路径为称这样的路径为回路或环回路或环。第9页,共53页,编辑于2022年,星期五
12、图的数学表示o点:用整数0,1,2,V-1表示o边:用无序数对(u,v)表示,或者表示成u-v第10页,共53页,编辑于2022年,星期五7.2 7.2 图的存储结构图的存储结构重点介绍:重点介绍:邻接矩阵邻接矩阵(数组数组)表示法表示法邻接表邻接表(链式链式)表示法表示法o主要有下面四种方法:o邻接矩阵o邻接表o十字链表o多重链表第11页,共53页,编辑于2022年,星期五一、邻接矩阵(数组)表示法一、邻接矩阵(数组)表示法v v建立一个建立一个建立一个建立一个邻接矩阵(表示各个顶点之间关系)邻接矩阵(表示各个顶点之间关系)邻接矩阵(表示各个顶点之间关系)邻接矩阵(表示各个顶点之间关系)。v
13、 v设图设图设图设图 A=(A=(V V,E E)有有有有 n n 个顶点,则图的邻接矩阵是一个二维数组个顶点,则图的邻接矩阵是一个二维数组个顶点,则图的邻接矩阵是一个二维数组个顶点,则图的邻接矩阵是一个二维数组 A.EdgennA.Edgenn,定义为:,定义为:,定义为:,定义为:1235v4 4A例例例例1 1:邻接矩阵:邻接矩阵:邻接矩阵:邻接矩阵:A.Edge=(1 2 3 4 5 )123450 0 0 0 00 0 0 0 00 0 0 0 00 0 0 0 00 0 0 0 00 1 0 1 01 0 1 0 10 1 0 1 11 0 1 0 10 1 1 1 00 1 0
14、1 01 0 1 0 10 1 0 1 11 0 1 0 10 1 1 1 0顶点表:顶点表:顶点表:顶点表:第12页,共53页,编辑于2022年,星期五例例2:有向图的邻接矩阵有向图的邻接矩阵v1v2v3v4A A邻接矩阵:A.Edge=(v1 v2 v3 v4)v1v2v3v40 0 0 00 0 0 0 0 0 0 0 0 0 0 0 注:注:在有向图的邻接矩阵中,在有向图的邻接矩阵中,第第i i行含义:以结点行含义:以结点v vi i为起点的边为起点的边(即出边);即出边);第第i i列含义:以结点列含义:以结点v vi i为终点的弧为终点的弧(即入边)。即入边)。顶点表:0 1 1
15、00 0 0 0 0 0 0 1 1 0 0 0 0 1 1 00 0 0 0 0 0 0 1 1 0 0 0 第13页,共53页,编辑于2022年,星期五特别讨论特别讨论:网(即有权图)的邻接矩阵网(即有权图)的邻接矩阵定义为:定义为:A.Edge i j=Wij 或(或(vi,vj)VR 无边(弧)无边(弧)v1v2v3v4Nv5v65489755613以有向网为例:以有向网为例:邻接矩阵:N.Edge=(1 2 3 4 5 6 )顶点表:5 7 4 8 9 5 6 5 3 1 第14页,共53页,编辑于2022年,星期五图的邻接矩阵表示示例int adjlistmax_vex_numma
16、x_vex_num;说明:adjlistij 若无权图无重边则直接用0 1表示I j两点 是否直接邻接 若无权图有重边则直接用0 1.表示是I j两点之间边的个数 若有权图则用来表示I j两点之间的距离 或者其他权值 第15页,共53页,编辑于2022年,星期五二、邻接表(链式)表示法二、邻接表(链式)表示法v v对每个顶点对每个顶点对每个顶点对每个顶点v vi i 建立一个建立一个建立一个建立一个单链表单链表单链表单链表,把与,把与,把与,把与v vi i有关联的有关联的有关联的有关联的边边边边(即度或出度边)(即度或出度边)(即度或出度边)(即度或出度边)链接链接链接链接起来,表中每个结点
17、都设为起来,表中每个结点都设为起来,表中每个结点都设为起来,表中每个结点都设为2 2个域;个域;个域;个域;adjvexnextarc 权权值值datafirstarc表结点表结点表结点表结点头结点头结点头结点头结点邻接点域,邻接点域,表表示示v vi i一个邻接点一个邻接点的位置的位置链域,链域,指向指向vivi下一个边或下一个边或弧的结点弧的结点数据域,存数据域,存储顶点储顶点vi 的的序号序号链域,链域,指向单指向单链表的第一个链表的第一个结点结点第16页,共53页,编辑于2022年,星期五邻接表的邻接表的缺点:缺点:邻接表的优点:邻接表的优点:空间效率高;空间效率高;容易寻找顶点的邻接
18、点;容易寻找顶点的邻接点;一般用于稀疏图一般用于稀疏图判断两顶点间是否有边或弧,需搜索两结点对应判断两顶点间是否有边或弧,需搜索两结点对应的单链表,没有邻接矩阵方便。的单链表,没有邻接矩阵方便。邻接表 邻接矩阵存储比较邻接矩阵的优点:邻接矩阵的优点:判断两顶点间是否有边或弧,可以直接判断判断两顶点间是否有边或弧,可以直接判断速度很快速度很快 一般用于存储稠密图一般用于存储稠密图邻接矩阵的邻接矩阵的缺点:缺点:存储空间大存储空间大 会影响算法的空间效率会影响算法的空间效率 甚至时间效甚至时间效率率第17页,共53页,编辑于2022年,星期五讨论:邻接表与邻接矩阵有什么异同之处?讨论:邻接表与邻接
19、矩阵有什么异同之处?1.1.联系:联系:邻接表中每个链表对应于邻接矩阵中的一行,链邻接表中每个链表对应于邻接矩阵中的一行,链表中结点个数等于一行中非零元素的个数。表中结点个数等于一行中非零元素的个数。2.2.区别:区别:对于任一确定的无向图,邻接矩阵是唯一的(行列号与顶对于任一确定的无向图,邻接矩阵是唯一的(行列号与顶点编号一致),但邻接表不唯一(链接次序与顶点编号无点编号一致),但邻接表不唯一(链接次序与顶点编号无关)。关)。邻接矩阵的空间复杂度为邻接矩阵的空间复杂度为O(nO(n2 2),),而邻接表的空间复杂度而邻接表的空间复杂度为为O(n+e)O(n+e)。3.3.用途:用途:邻接矩阵
20、多用于稠密图的存储(邻接矩阵多用于稠密图的存储(e e接近接近n(n-1)/2)n(n-1)/2);而邻接表多用于稀疏图的存储(;而邻接表多用于稀疏图的存储(ene1.容易证明对于任意距离值x,di=x的点一定是正确的,而且白色点(没有计算出距离的点)的距离一定至少为x+1o更进一步,根据每个点的parent值,可以计算出它到s的一条最短路第24页,共53页,编辑于2022年,星期五Bfs算法中路径的打印Print-Path(G,s,v)if(v=s)then print s else if v=NIL then print“no path from”s”to”v”exits”else Pri
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基本概念 拓扑 排序 幻灯片
限制150内