当前位置:
文档之家› 数据结构-第7章 图---1. 基本概念
数据结构-第7章 图---1. 基本概念
7.1.2 图的基本术语
4、稠密图、稀疏图 当一个图接近完全图时,则称为稠密图。 相反,当一个图含有较少的边数(即当e<<n(n1))时,则称为稀疏图。
7.1.2 图的基本术语
5、子图
设有两个图G=(V,E)和G'=(V',1E'),若V'是V 的子集,即V'∈V,且E'是E的子集,即E' ∈E
1
2
0
两个强连通分量
3
7.1.2 图的基本术语
在一个非强连通中找强连通分量的方法。
① 在图中找有向环。
② 扩展该有向环:如果某个顶点到该环中任一顶点有 路径,并且该环中任一顶点到这个顶点也有路径, 则加入这个顶点。
一个非强连通图 1
3个强连通分量 1
2
0
2
0
3
4
5
3
4
5
7.1.2 图的基本术语
10、生成树、生成森林: 一个连通图(无向图)的生成树是一个极小连通 子图,它含有图中全部n个顶点和只有足以构 成一棵树的n-1条边,称为图的生成树。
a
b
c
d
(a) 有向图G1
7.1.1 图的定义
【例2】设有无向图G2,形式化定义是: G2=(V2 ,E2) V2={a,b,c,d} E2={(a,b), (a,c), (b,c), (c,d)}
a
d
b
c
(b) 无向图G2
7.1.1 图的定义
图抽象数据类型: ADT Graph{
数据对象:具有相同特性的元素集合 数据关系:R {VR}
无若向图图中:G任中若意的从两极顶个大点顶连i点到通都顶子连点图通j有称,路为则径G称的,为连则连通称通分顶图量点,i 和。否j则是称连为通非的连。通图。
显然,任何连通图的连通分量只有一个,即本
身,而非连通图有多个连通分量。
1
1
2
0
3 一个连通图
2
0
3
一个非连通图
两个连通分量
7.1.2 图的基本术语
1
1
2
0
3 一个连通图
2
0
3 图的生成树
7.1.2 图的基本术语
关于无向图的生成树的几个结论: 一棵有n个顶点的生成树有且仅有n-1条边; 如果一个图有n个顶点和小于n-1条边,则是非 连通图; 如果多于n-1条边,则一定有环; 有n-1条边的图不一定是生成树。
7.1.2 图的基本术语
有向图的生成森林是这样一个子图,由若干棵 有向树组成,含有图中全部顶点,但是只有足 够构成若干棵有向树的边。
7.1.2 图的基本术语
2、顶点的度、入度和出度
无向图:以顶点i为端点的边数称为该顶点的
度。
1
顶点1的度为3
有向图:以顶点i2为终点3 的入0 边的数目,称为
该 称顶为2点该的顶入点13 度的出。0 度以。顶一点个i为4(顶b)始点点顶顶的的点点入00出的 的度边入出与度度的出为为数12度目的,和
7.1.1 图的定义
在图G中,如果代表边的顶点对是无序的,则称 G为无向图。用圆括号序偶表示无向边。
1
(0,1)
2
3
0
4
7.1.1 图的定义
如果表示边的顶点对是有序的,则称G为有向图 。用尖括号序偶表示有向边。
1
<0,1>
230
4
7.1.1 图的定义
【例1】设有有向图G1,形式化定义是: G1=(V1 ,E1) V1={a,b,c,d} E1={<a,b>,<a,c>, <c,d> ,<d,a>,<d,b>}
9、强连通图和强连通分量
有向图:若从顶点i到顶点j有路径,则称从顶 点i到j是连通的。
若图G中的任意两个顶点i和j都连通,即从顶点
i到j和从顶点j到i都存在路径,则称图G是强连
通图。 1
1
2
0
2
0
3 一个强连通图
3 一个非强连通图
7.1.2 图的基本术语
9、强连通图和强连通分量 有向图G中的极大强连通子图称为G的强连通 分量。显然,强连通图只有一个强连通分量, 即本身。非强连通图有多个强连通分量。
VR { x, y | P(x, y),xyV}
操作集合:创建、插入、删除、遍历等 }
7.1.2 图的基本术语
1、端点和邻接点 无向图:若存在一条边(i,j) →顶点i和顶点 j为端点,它们互为邻接点。 有向图:若存在一条边<i,j> →顶点i为起始 端点(简称为起点),顶点j为终止端点(简称 终点),它们互为邻接点。
,则称G'是G的子图。 2
3
0
1
2
3
0
4
4 1
2
3
0
4
7.1.2 图的基本术语
6、路径和路径长度 在一个图G=(V,E)中,从顶点i到顶点j的一条 路径(i,i1,i2,…,im,j)。 所有的(ix,iy) ∈E(G),或者<ix,iy> ∈E(G)
7.1.2 图的基本术语
6、路径和路径长度 路径长度是指一条路径上经过的边的数目。 若一条路径上除开始点和结束点可以相同外, 其余顶点均不相同,则称此路径为简单路径。
12
3
5
2
0
6
3
7.1 图
1、图的定义与相关术语 图是多对多的网状结构,记为G=(V,E); 邻接点、路径与回路、顶点的度、生成树; 2、与树结构的区别: 图是多对多关系,树是一对多关系 3、图的类型: 无向图/有向图/完全图/子图/连通图(连通图、 连通分量针对无向图,强连通图、强连通分量针 对有向图) 4、顶点在图中的位置:人为排序编号
7.1.2 图的基本术语
3、完全图 无向图:每两个顶点之间都存在着一条边,称 为完全无向图, 包含有n(n-1)/2条边。 有向图:每两个顶点之间都存在着方向相反的 两条边,称为完全有向图,包含有n(n-1)条边。
1
2
0
1
2
0
3 完全无向图:n=4,e=n(n-1)/2=6
3 完全有向图:n=4,e=n(n-1)=12
有向树是只有一个顶点的入度为0 ,其余顶点 的入度均为1的有向图。
a
b
a
d
e
c
d
cb
e
(a) 有向图
(b) 生成森林
7.1.2 图的基本术语
11、权和网
图中每一条边都可以附带有一个对应的数值, 这种与边相关的数值称为权。
权可以表示从一个顶点到另一个顶点的距离或 花费的代价。ຫໍສະໝຸດ 边上带有权的图称为带权图,也称作网。
7.1 图的定义 7.2 图的存储结构 7.3 图的遍历 7.4 图的连通性问题 7.5 有向无环图及其应用 7.6 最短路径
7.1.1 图的定义
图(Graph)是一种网状数据结构。
G由顶点集合V(G)和边集合E(G)构成,其形式化
定义为:G=(V,E)。
1
2
3
0
4
说明:对于n个顶点的图,对每个顶点连续编号 ,即顶点的编号为0~n-1。通过编号唯一确定一 个顶点。
1
0→ 1的一条简单
2
0
路径,长度为2
3
7.1.2 图的基本术语
7、回路或环
若一条路径上的开始点与结束点为同一个顶点 ,则此路径被称为回路或环。
开始点与结束点相同的简单路径被称为简单回 路或简单环。
1
(0,2,1,0)就是一
2
0
条简单回路,其长度
为3。
3
7.1.2 图的基本术语
8、连通、连通图和连通分量
为该顶点的度。
4
顶点0的度为1+2=3
(a)
7.1.2 图的基本术语
顶点1的度为3
1
2
3
0
1 230
4
4
顶点0的入度为1
(a)
(b) 顶点0的出度为2
顶点0的度为1+2=3
7.1.2 图的基本术语
若一个图中有n个顶点和e条边,每个顶点的度 为di(0≤i≤n-1),则有:
e= 1
2
n1 i0
di