ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

2022-02-08 02:31:45  阅读:150  来源: 互联网

标签: 连通 有向图 路径 初始条件 操作 顶点


6.1 图的定义和基本术语

6.1.1 图的定义

图(Graph) G由两个集合V和E组成,记为G=(V,E)

V:顶点的有穷非空集合

E:是V中顶点偶对的有穷集合,这些顶点偶对称为边

V(G):图G的顶点集合

E(G):图G的边集合(可以为空集)——若E(G)为空,则图G只有顶点而没有边

有向图:对于图G,若边集E(G)为有向边的集合

无向图:若边集E(G)为无向边的集合

 

1.在有向图中,顶点对<x, y>是有序的,它称为从顶点 x到顶点 y的一条有向边。

<x, y>≠<y, x>

2.在无向图中,顶点对(x,y)是无序的,称为与顶点x和顶点y相关联的一条边,无特定方向。

(x, y)=(y, x)

 

6.1.2 图的基本术语

(1) 子图:假设有两个图 G = (V, E)和 G'= (V', E'), 如果V'己V且 E'�E, 则称 G'为 G 的子图。

(2) 无向完全图和有向完全图:对于无向图,若具有 n(n- 1)/2 条边,则称为无向完全图。对于有向图,若具有n(n- 1)条弧,则称为有向完全图。

(3)稀疏图和稠密图:有很少条边或弧(如 e<nlog2n) 的图称为稀疏图, 反之称为稠密图。

(4)权和网:在实际应用中,每条边可以标上具有某种含义的数值,该数值称为该边上的权。这些权可以表示从一个顶点到另一个顶点的距离或耗费。这种带权的图通常称为网。

(5)邻接点:对于无向图 G, 如果图的边 (v, v')∈E, 则称顶点 v 和 v'互为邻接点, 即 v 和 v'相邻接。边 (v, v')依附于顶点 v 和 v', 或者说边 (v, v')与顶点 v 和 v'相关联。

(6) 度、入度和出度:顶点v的度是指和v相关联的边的数目,记为 TD(v),入度是以顶点v为头的弧的数目,记为ID(v); 出度是以顶点 v 为尾的弧的数目,记为OD(v)

(7)路径和路径长度:在无向图 G 中,从 顶点 v 到顶点 v'的 路径是一个顶点序列 如果 G 是有向图, 则路径也是有向的, 路径长度是一条路径上经过的边或弧的数目。

(8) 回路或环:第一个顶点和最后一个顶点相同的路径称为回路或环。

(9)简单路径、 简单回路或简单环:序列中顶点不重复出现的路径称为简单路径。除了第一个顶点和最后一个顶点之外,其余顶点不重复出现的回路,称为简单回路或简单环。

(10) 连通、连通图和连通分量:在无向图 G 中,如果从顶点 v 到顶点 v'有路径,则称 v 和 v'是连通的。如果对于图中任意两个顶点都是连通的,则称 G 是连通图。连通分量, 指的是无向图中的极大连通子图。

(11) 强连通图和强连通分量:在有向图 G 中,如果对于每一对顶点都存在路径,则称G是强连通图。强连通分量,有向图的极大强连通子图

(12) 连通图的生成树: 一个极小连通子图,它含有图中全部顶点,但只有足以构成一棵树的 n-1条边,这样的连通子图称为连通图的生成树。

(13) 有向树和生成森林:有一个顶点的入度为 0, 其余顶点的入度均为 l1的有向图称为有向树。 一个有向图的生成森林是由若干棵有向树组成,含有图中全部顶点,但只有足以构成若干棵不相交的有向树的弧。

 

6.3 图的类型定义

ADTGraph{ 
数据对象: V是具有相同特性的数据元素的集合,称为顶点集。
数据关系:
R = {VR}
VR = {<v, w>|v, wEV且P (v, w) <v, w>表示从v到w的弧 ,
谓词P (v, w)定义了弧<v, w>的意义或信息}
基本操作:
Cr eateGraph{&G,V,VR}
初始条件:V是图的顶点集,VR是图中弧的集合。
操作结果:按V和VR的定义构造图G。
DestroyGraph { &G}
初始条件:图G存在。
操作结果:销毁图G。
Locat eVex{G,u}
初始条件:图G存在,u和G中顶点有相同特征。
操作结果:若G中存在顶点 u, 则返回该顶点在图中的位置;否则返回其他信息。
GetVex{G,v}
初始条件:图G存在,v是G中某个顶点。
操作结果:返回v的值。
PutVex(&G,v,value);
初始条件:图G存在,v是G中某个顶点。
操作结果:对 v赋值value。
FirstAdjVex(G,v)
初始条件:图G存在,v是G中某个顶点。
操作结果:返回 v的第一 个邻接顶点。若v在G中没有邻接顶点,则返回 “空” 。
NextAdjVex(G,v,w)
初始条件:图G存在,v是G中某个顶点,w是v的邻接顶点。
第6章 图
操作结果:返回v的(相对千w的)下一 个邻接顶点。若w是v的最后一 个邻接点,则返回 “空” 。
InsertVex(&G,v)
初始条件:图G存在,v和图中顶点有相同特征。
操作结果:在图G中增添新顶点v。
DeleteVex(&G,v)
初始条件:图G存在,v是G中某个顶点。
操作结果:删除 G中顶点v及其相关的弧。
InsertArc(&G,v,w)
初始条件:图G存在,v和w是G中两个顶点。
操作结果:在G中增添弧<v, w>, 若G是无向图,则还增添对称弧<w, v>。
Dele七eArc(&G,v,w)
初始条件:图G存在,v和w是G中两个顶点。
操作结果:在G中删除弧<v, w>, 若G是无向图,则还删除对称弧<w, v>。
DFSTraverse(G)
初始条件:图G存在。
操作结果:对图进行深度优先遍历,在遍历过程中对每个顶点访问一次。
BFSTraverse(G)
初始条件:图G存在。
操作结果:对图进行广度优先遍历,在遍历过程中对每个顶点访问一次。
}ADT Graph

 

标签:,连通,有向图,路径,初始条件,操作,顶点
来源: https://www.cnblogs.com/cyjxl/p/15869943.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有