- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[2018年最新整理]图的基本概念、存储、遍历
图的基本概念 山东省青岛第二中学 臧方青 2:图结构的基本概念 (1)图:一个图G由两个集合V和E组成,记为G=(V,E)。图的数据元素通常称为顶点(vertex),V是有限的非空顶点集,E是两个顶点之间的关系的有限集,分别记为V(G)、E(G)。 (2)有向图:任意x,y∈E(G),表示从顶点x到顶点y的一条弧(arc),且称x为弧尾(tail)或初始点,称y为弧头(head)或终端点。此时E(G)中的元素是有序的(即x,y≠ y, x ),称G为有向图(digraph)。 (3) 无向图:任意(x,y)∈E(G),表示x和y这两个顶点之间有一条边(edge)。此时E(G)中的元素是无序的(即(x,y)=( y, x)),称G为无向图(undigraph)。 (4) 图的顶点和边的性质1:设图G中有n个顶点、e条边,即n=︱V(G)︳,e=︱E(G)︳,则(1)对无向图,0≤e≤n(n-1)/2;(2)对有向图,0≤e≤n(n-1)。 (5) 完全图、有向完全图、稀疏图、稠密图:有n(n-1)/2条边的无向图称为完全图(completed graph);有n(n-1)条边的有向图称为有向完全图;边或弧很少(如enlogn)的图称为稀疏图(sparse graph),反之称为稠密图(dense graph)。 (6)权、网:有时,图的边或弧带有与它相关的数,叫做权(weight)或代价(cost)。这种带权的图通常称为网(network)。 (7)子图:假设有两个图G=(V,E),G’=(V’,E’),若V(G)≦V’(G’)且E(G)≦E’(G’),则成G为G’的子图(subgraph)。 (8) 邻接点、度:对于无向图G=(V,E),如果边(v,v’)∈E(G),则称顶点v和v’互为邻接点(adjacent),即v和v’相邻接。边(v,v’)依附于顶点v和v’,或者说边(v,v’)和顶点v、v’相关联。对于无向图G=(V,E),v ∈V(G),顶点v的度(degree)是和v相关联的边的数目,记为TD(v)。对于有向图G=(V,E),如果弧v,v’∈E(G),则称顶点v邻接到v’,顶点v’邻接自顶点v,弧v,v’和顶点v、v’相关联。对于有向图G=(V,E),v ∈V(G),以顶点v为头的弧的数目称为v的入度(in-degree),记为ID(v);以v为尾的弧的数目称为v的出度(out-degree),记为OD(v);顶点v的度为TD(v)=ID(v)+OD(v)。 (9)图的顶点和边的性质2:一个有n个顶点v1,v2,…,vn,e条边或弧的图,满足如下关系: (10)?? 路径、回路、环:无向图G=(V,E)中从顶点v到顶点v’的路径(path)是一个顶点序列(v=vi0,vi1,…,vin=v’),其中,(vi(j-1),vij)∈E(G),1≤j≤n。如果G是有向图,则路径也是有向的,顶点序列应满足vi(j-1),vij∈E(G),1≤j≤n。路径的长度是路径上边或弧的数目或它们的权之和。第1个顶点和最后1个顶点相同的路径称为回路或环(cycle)。序列中顶点不重复出现的路径称为简单路径。除了第1个顶点和最后1个顶点相同外,其余顶点不重复出现的回路,称为简单回路或简单环。 (11)?? 连通、连通图、连通分量:在无向图G中,如果从顶点v到顶点v’有路径,则称v和v’是连通的。如果图中任意两个顶点之间都存在路径,则称该无向图G为连通图。连通分量指的是图中的极大连通子图。在有向图G中,如果对于每一对顶点v、v’,从v到v’和从v’到v都存在路径,则称G是强连通图。有向图的极大强连通子图称为有向图的强连通分量。 若图中每个顶点只含一个编号i(1≤i≤vnum),则只需一个二维数组表示图的邻接矩阵。此时存储结构可简单说明如下: const? vnum=…;{图的顶点数} type? adj=0..1; adjmatrix=array[1..vnum,1..vnum]of adj; end; 邻接表:邻接表是顺序结构和链式结构相结合的一种表示方法。在邻接表中,对图中的每一个顶点vi建立一个单链表li,vi作为单链表li的头结点,li中的每个结点表示与这个顶点vi相关联的顶点。若干个头结点用顺序结构存储,即构成了邻接表。 结点结构如下: ? 边结点中adjv表示与顶点vi相关联的顶点编号,nexte是一个指针,它指向下一个与vi相关联的顶点,edata表示这条边的有关数据信息,如权等。 头结点中 vdata表示顶点vi的顶点数据信息,如顶点名称等,firste表示与vi相连的第一条边。 在无向图的邻接表中,顶点vi的度恰为第I个链表中结点个数:而在有向图中,第I个链表中结点个数只是顶
您可能关注的文档
最近下载
- 2024年新人教道德与法治一年级上册全册教学课件(新版教材).pptx
- 一种去除皮革醛类VOCs的方法.pdf VIP
- 党员发展对象思想汇报.doc VIP
- 07 文言文四类实词积累方法(文言文阅读)-2026年高考语文一轮复习之古诗文专题课件(全国通用).pptx
- 网御网络审计系统V3.0用户使用手册.doc.pdf VIP
- 泥水工劳务承包合同(2024版).docx VIP
- 初三英语完形填空十篇(含答案).docx VIP
- 球磨机设计完整版.doc VIP
- 2024年《关于加快经济社会发展全面绿色转型的意见》学习解读课件.pptx VIP
- DB44_T 2693-2025电化学储能电站安全管控技术规范.pdf VIP
文档评论(0)