图Graph是一种较线性表和树更为复杂的非线性结构在线幻灯片PPT

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

A ij, 1 0 : :v v 若 i若 i,,v v j) j) ( ( v v 或 i或 i,,v v jj 是 不 E ( E G ( ) 是 G ) 中 中 的 的 边 边
• 用邻接矩阵表示法表示图,除了存储用于表示顶点间 相邻关系的邻接矩阵外,通常还需要用一个顺序表来 存储顶点信息。其形式说明如下:
无向图G的极大连通子图称为G的连通分量(connected Component)。显然,任何连通图的连通分量只有一个,即是其 自身,而非连通的无向图有多个连通分量。例如,图7-4中的G4 是非连通图,它有两个连通分量Hl和H2。 在有向图G中,若对于V(G)中任意两个不同的顶点vi和vj,都存在 从vi到vj以及从vj到vi的路径,则称G是强连通图。有向图G的极大 强连通子图称为G的强连通分量。显然,强连通图只有一个强连 通分量,即是其自身。非强连通的有向图有多个强连通分量。例 如图7-1中的Gl不是强连通图,因为v3到v2没有路径,但它有两个 强连通分量,
在一个有向图中,若存在一个顶点v,从该顶点有路径可以到达图中 其它所有顶点,则称此有向图为有根图,v称作图的根。
在无向图G中,若从顶点vi到顶点vj有路径(当然从vj到vi也一定有路 径),则称vi和vj是连通的。若V(G)中任意两个不同的顶点vi和vj都 连通(即有路径),则称G为连通图(Connected Graph)。例如,图 G2和G3是连通图。
无向图中顶点v的度(Degree)是关联于该顶点的边的数 目,记为D(v)。若G为有向图,则把以顶点v为终点的 边的数目,称为v的人度(1ndegree),记为ID(v);把 以顶点v为始点的边的数目,称为v的出度(outdegree), 记为OD(v);顶点v的度则定义为该顶点的入度和出度 之和,即D(v)=ID(v)十OD(v)。
• adjtype arcs[n][n];
• }graph;
• 若图中顶点信息是0至n-1的编号,则仅需令权值为1,存储一个邻接矩阵就可以 表示图。若是网络,则adjtype为权的类型。由于无向图或无向网络的邻接矩阵是 对称的,故可采用压缩存储的方法,仅存储下三角阵(不包括对角线上的元素)中 的元素即可。显然,邻接矩阵表示法的空间复杂度S(n)=O(n2)。
• # define n 6
/ * 图的顶点数 * /
• # define e 8
/ * 图的边(弧)数 */
• typedef char vextype; /
/ * 顶点的数据类型 *
• typedef float adjtype;
/ * 权值类型 * /
• typedef struct
• {vextype vexs[n];
• CREATGRAPH(ga) /* 建立无向网络 * / • Graph * ga; •{ • int i,j,k; • float w; • for(i=0;i<n;i++) • ga ->vexs[i]=getchar();/* 读入顶点信息,建立顶点表 */ • for(i=0;i<n;i++) • for( j=0;j<n;j++) • ga ->arcs[i][ j]=0; /* 邻接矩阵初始化*/ • for(k=0;k<e;k++) /* 读入e条边 */ • (scanf(”%d%d%f”,&I,&j,&w);/*读入边(vi,vj)上的权w */ • ga ->arcs[i][ j]=w; • ga - >arcs[ j][i]=w; •} • }/*CREATGRAPH */ • 该算法的执行时间是O(n+n2+e),其中O(n2)的时问耗费在邻接矩阵的初始化操作
• 图G由两个集合V和E组成,记为G=(V,E),其中v是 顶点的有穷非空集合,E是V中顶点偶对(称为边)的 有穷集。通常,也将图G的顶点集和边集分别记为V(G) 和E(G)。E(G)可以是空集,若E(G)为空,则图G只有顶 点而没有边,称为空图。
若(vi,vj)是一条无向边,则称顶点vi和vj互为邻接点 ((AIndcjiadceenntt)于),顶或点称vvi和i和vvj,j相或邻称接(v;i,称v(jv)与i,顶vj点)关v联i和vj相关 联v4,。而如关图联7-于1中顶G点2,v2与的顶边点是v(vl相l,邻v2接),的(顶v2,点v是3)v和2,(vv2,3和 v顶4)点。v若j邻<接v于i,顶vj>点是vi,并一称条边有<向v边i,,v则j>称关顶联点于vvi邻i和接vj到或v称j, <顶v点i,v2v的j>边与是顶<点vv1,i和vv2j>相,关<联v。2,如v图l>7和-1<中vG2l,,v3关>联。于
在无向图G中,若存在一个顶点序列vp,vi1,vi2…,vin,vq, 使得(vp,vil),(vi1,vi2),…,(vin,vq)均属于E(G),则 称顶点vp到vq存在一条路径(Path)。若G是有向图,则 路径也是有向的,它由E(G)中的有向边<vp,vil>, <vil,vi2>,…,<vin,vq>组成。路径长度定义为 该路径上边的数目。若一条路径上除了vp和vq可以相 同外;其余顶点均不相同,则称此路径为一条简单路 径。起点和终点相同(vp=vq)的简单路径称为简单回路 或简单环(Cycle)。例如,在图G2中顶点序列vl,v2,v3, v4是一条从顶点vl到顶点v4的长度为3的简单路径;顶 点序列vl,v2,v4,vl,v3是一条从顶点vl到顶点v3的长 度为4的路径,但不是简单路径;顶点序列vl,v2,v4, vl是一个长度为3的简单环。在有向图Gl中,顶点序列 vl,v2,vl是一个长度为2的有向简单环。
若将图的每条边都赋上一个权,则称这种带权图为网 络(Network)。通常权是具有某种意,耗费等
图的存储结构
•邻 接 矩 阵 (Adjacency Matrix) 是表示顶点之间相邻 关系的矩阵。设G= (V , E) 是 具 有 n 个 顶 点的图,则G的邻接 矩阵是具有如下性质 的n阶方阵:
图Graph是一种较线性表 和树更为复杂的非线性结
构在线幻灯片PPT
本课件PPT仅供大家学习使用 学习完请自行删除,谢谢! 本课件PPT仅供大家学习使用 学习完请自行删除,谢谢! 本课件PPT仅供大家学习使用 学习完请自行删除,谢谢! 本课件PPT仅供大家学习使用 学习完请自行删除,谢谢!
基本定义和术语
• 若图G中的每条边都是有方向的,则称G为有向图 (Digraph)。在有向图中,一条有向边是由两个顶 点组成的有序对,有序对通常用尖括号表示。例如, <vj是vi,边v的j>终表点示。一因条此有,向<边vi,,vvij是>边和的<始vj,点v(i>起是点两)条,不 同的有向边。有向边也称为弧(Arc),边的始点称为 弧尾(Tail),终点称为弧头(Head)。
相关文档
最新文档