第七章数据结构 图要点.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第七章数据结构 图要点

第七章 图 7.1图的定义和术语 7.2图的存储结构 7.3图的遍历 7.4图的连通性问题 7.5有向无环图及其应用 7.6最短路径 图的定义和术语 图:用G=(V,E)来表示.V:表示顶点有限集合 E:由顶点对表示边的集合 有向图:图中边有方向的图 无向图:图中边无方向的图 如图: G1有向图 G1=(V1,{A1}) 其中: V1={v1,v2,v3,v4} A1={v1,v2,v1,v3,v3,v4,v4,v1} G2无向图 G2=(V2,{E2}) 其中 V2={v1,v2,v3,v4,v5} E2={(v1,v2),(v1,v4),(v2,v3),(v2,v5),(v3,v4),(v3,v5)} 我们用n表示图中顶点数目,用e表示边或弧得数目。 对于无向图,e得取值范围为0到1/2n(n-1). 对于有向图,e得取值范围为0到n(n-1). 基本概念 在图中的数据元素通常称为顶点,V是顶点 的有穷非空集合;E是两个顶点之间的关系 的集合.若v,w∈E,则v,w表示从v到 w的一条弧,且称v为弧尾或初始点,称w为 弧头或终端点 完全图:有n(n-1)/2条边的无向图 有向完全图:具有n(n-1)条弧的有向图 稀疏图:有很少条边或弧(如enlogn)的图 稠密图:有很多条边或弧的图 权:有时图的边或弧具有与它相关的数,这种与图的边或弧相关的数叫权 子图:设有两个图G=(V,{E})和G’=(V’,{E’}),如果V’来自 V且E’来自E,则称G’为G的子图 例:下图是G1图的子图例子 度:顶点v的度(Degree)是和v相关联的边的数目,记为TD(V) 入度:以顶点v为头的弧的数目称为v的入度,记为ID(v) 出度:以顶点v为尾的弧的数目称为v的出度,记为OD(v) TD(v)=ID(v)+OD(v) 一般地,如果顶点vi的度记为TD(vi),那么一个有n个顶 点,e条边或弧的图,满足如下关系 e=1/2∑i=1nTD(vi) 连通图:在无向图G中,如果从顶点v到顶点v’有路径,则 称v到v’是连通的;如果对于图中任意两个顶点都是 连通的,则称G是连通图 连通分量:无向图中的极大连通子图 强连通图:在有向图G中,如果对于每一vi,vj∈V,vi!=vj, 从vi到vj和从vj到vi都存在路径,则称G是强 连通图 强连通分量:有向图中的极大强连通子图 图的基本操作 creatGraph(G,V,VR); 初始条件:v是图的顶点集,VR是图中弧的集合。 操作结果:按V和VR的定义构造图。 DestroyGraph(G); 初始条件:图G存在。 操作结果:销毁图G。 Locatevex(G,u); 初始条件:图G存在,u和G中顶点有相同特征。 操作结果:若G中存在顶点u,则返回该顶点在图中的位置;否则返回其他信息。 7.2 图的存储结构 一:数组表示法(邻接矩阵) 用两个数组分别存储数据元素(顶点)d的信息和数据 元素之间的关系(边或弧)的信息(邻接矩阵) 设:图G 中顶点的序号为1,2,。。。N 则图的邻接矩阵可定义为 1 若(vi,vj)或vi,vj∈E ,则1 A(i,j)= 否则为0 网的邻接矩阵可定义为 A[i][j]= wi ,j 若vi,vj或(vi,vj)∈E ∞ 反之 图的数组存储表示 图的数组存储表示: #define INFINITY INT_MAX //最大值∞ #define MAX_VERTEX_NUM 20 //最大顶点个数 Typedef enum {DG,DN,AG,AN} GraphKind; //有向图,有向网,无向图,无向网 Typedef struct { VertexType vexs[MAX_

文档评论(0)

2299972 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档