一 图的定义
图G由顶点集V和边集E组成,记为G = (V,E),其中V(G)表示图G中顶点的有限非空集;E(G)表示图G中顶点之间的关系(边)集合。若V={v1,v2,...,vn},则用|V|表示图G中顶点的个数,也称为图G的阶,E={(u,v)|u∈V,v∈V},用|E|表示图G中边的条数。
注意:线性表可以为空表,树可以为空树,但是图不可以为空图。即,图中不能一个顶点也没有,图的顶点集V一定非空,但边集E可以为空,此时图中只有顶点而没有边。
二 图的类型
有向图
若E为有向边(也称弧)的有限集合时,则图G为有向图。弧是顶点的有序对,记为<v,w>,其中v,w是顶点,v称为弧尾,w称为弧头,<v,w>称为从顶点v到顶点w的弧,也称为v邻接到w,或者w邻接子v。
有向图G1={V1,E1};顶点集合为:V1={1,2,3},边集合E1为:{<1,2>,<2,1>,<2,3>}
无向图
若E为无向边(简称边)的有限结合时,则图G为无向图。边是顶点的无序对,记为(v,w)或者(w,v),因为(v,w) = (w,v),其中v,w是顶点。可以说顶点w和顶点v互为邻接点。边(v,w)依附于顶点w和v,或者边(v,w)和顶点v,w相关联。
无向图G2=(V2,E2);顶点集合为:V2(1,2,3,4),边集合E2为:{(1,2),(1,3),(1,4),(2,3),(2,4),(3,4)}
简单图
一个图G满足①不存在重复的边,②不存在顶点到自身的边,则图G为简单图。
多重图
一个图G中某两个结点之间的边数多余一条,又允许顶点通过同一条边和自己关联,则G为多重图。
注意:多重图和简单图的定义是相对的。
完全图(简单完全图)
对于无向图,|E|的取值范围是0到n(n-1)/2,有n(n-1)/2条边的无向图称为完全图,在完全图中任意两个顶点之间都存在边。
对于有向图,|E|的取值范围是0到n(n-1),有n(n-1)条弧的有向图称为有向完全图,在有向完全图中任意两个顶点之间都存在方向相反的两条弧。
上述的n为图中顶点的数量。
无向完全图 | 有向完全图 |
三 图的细分概念
子图
当两个图G1=(V1,E1)和G2=(V2,E2),若V1是V2的子集,且E1是E2的子集,则称G1是G2的子图。若有满足V(G1)=V(G2),则称G1为G2的生成子图。
注意:并非V和E的任何子集都能构成G的子图,因为子集中可能不是图,即E的子集中的某些边关联的顶点可能不在顶点集合V中。
连通,连通图和连通分量
连通 | 在无向图中,若从顶点v到顶点w有路径存在,则称v和w是连通的。 |
连通图 | 当图G中任意两个都是连通的(并不需要每个两个顶点两两连通),则称图G为连通图,否则为非连通图 |
连通分量 | 无向图中的极大连通子图称为连通分量,若图中有n个顶点,并且边数小于n-1,则此图必为连通图 |
极大连通子图
- 极大连通子图中包含了所有的边,对于连通图而言,最大连通子图是它本身,且它是唯一的,对于非连通图而言,存在多个不同的极大连通子图。
- 往极大连通子图中增加图中顶点的任何一个其他的不在连通子图中的顶点时,极大连通子图都不再连通。
极小连通子图
- 极小连通子图中是保持图连通且边数最少的子图。它只会存在于连通图中,连通图的生成树是该连通图顶点集确定的极小连通子图,同一个连通图存在不同的生成树,所以极小连通子图不唯一。
- 用边把极小连通子图中所有节点给连起来,若有n个节点,则有n-1条边。
- 对于极小连通子图而言,当移除其中任意一条边的时候,都会无法构成树,即极小连通子图中的每条边都是不可少的。
- 如果在生成树上添加一条边,一定会构成一个环。即只要能连通图的所有顶点而又不产生回路的任何子图都是它的生成树。
强连通图,强连通分量
在有向图中,若从顶点v到顶点w和从顶点w到顶点v之间都存在连通路径,则称这两个顶点是强连通的。若图中任何一个顶点都是强连通的,则称此图为强连通图。有向图的极大强连通子图称为有向图的强连通分量。
注意:强连通图,强连通分量只是针对有向图而言的。一般在五向连通中讨论连通性,在有向图中考虑连通性。
生成树,生成森林
连通图的生成树是包含图中全部顶点的一个极小连通子图,若图中顶点数为n,则它的生成树含有n-1条边。对于生成树而言,若砍去它的一条边,则会变成非连通图,若加上一条边会形成一个回路。
包含无向图中全部顶点的极小连通子图,只有生成树满足条件,因为砍去生成树的任一条边,图将不再连通。
在非连通图中,连通分量的生成树构成了非连通图的生成森林。
顶点的度,入度和出度
顶点的度 | 每个顶点的度定义为以该顶点为一个端点的边的数目,它是该顶点中出度和入度之和。 |
入度 | 在有向图中,以该顶点v为终点的有向边的数目。 |
出度 | 在有向图中,以该顶点v为起点的有向边的数目。 |
无向图中的全部顶点的度的和等于边数量的2倍,因为每条边和两个顶点相关联。
在有向图中,因为每条有向边都有一个起点和终点。即有向图的全部顶点的入度之和于出度之和相等。
边的权和网
在一个图中,每条边都可以标上具有某种意义的数值,该数值称为该边的权值。这中边上带有权值的图称为带权图,也称为网。
稠密图,稀疏图
边数很少的图称为稀疏图,反之称为稠密图。稀疏和稠密本身是模糊的概念,稀疏图和稠密图只是相对而言。一般当图G满足|E|<|V|log|V|时,可以将G视为稀疏图。
路径,路径长度和回路
顶点vp到顶点vq之间的一条路径是指顶点序列vp,v1,v2,...,vq,当然关联的边也可以理解为路径的构成要素。路径上边的数目称为路径长度。第一个顶点和最后一个顶点相同的路径称为回路或环。若一个图有n个顶点,并且有大于n-1条边,则此图一定有环。
简单路径,简单回路
在路径序列中,顶点不重复出现的路径称为简单路径。除第一个顶点和最后一个顶点外,其余顶点不重复出现的回路称为简单回路。
距离
从顶点u出发到顶点v的最短路径若存在,则此路径的长度称为从u到v的距离。若从u到v根本不存在路径,则该距离为无穷(∞)。
有向树
一个顶点的入度为0,其余顶点的入度均为1的有向图,称为有向树。