定义
图G由顶点集V和边集E组成,记为G=(V,E)
V(G)表示图G中顶点的有限非空集。用|V|表示图G中顶点的个数,也称为图G的阶。
E(G)表示图G中顶点之间的关系(边)集合,用|E|表示图G中边的条数。
图不可以为空,一个图中就算是一条边都没有,也就是边集为空,但顶点集一定不为空。
- 有向图
- 弧是顶点的有序对
- <v,w>
- v是弧尾,w是弧头
- v邻接到w或者w邻接自v
- 无向图
- 边是顶点的无序对
- (v,w)
- (v,w) = (w,v)
- w,v互为邻接点
- 简单图
- 不存在顶点自身的边
- 同一条边不重复出现
- 多重图
- 若图G中某两个结点之间的表示农户多于一条
又允许顶点通过同一条边和自己关联。
- 若图G中某两个结点之间的表示农户多于一条
-
无向完全图
如果任意两个顶点之间都存在边。
对于n个顶点,每个顶点都与其他n-1个顶点有一条边,由于重复,所以一共有n×(n−1)/2n\times (n-1)/2n×(n−1)/2条边。 -
有向完全图
如果任意两个顶点之间都存在方向相反的两条弧。
对于n个顶点,每个顶点都与其他n-1个顶点有一条边,由于重复,所以一共有n×(n−1)n\times (n-1)n×(n−1)条边。 -
子图
设有两个图 G=(V,E)G=(V,E)G=(V,E)和G1=(V1,E1)G^1=(V^1,E^1)G1=(V1,E1),若V1V^1V1是VVV的子集,且E1E^1E1是EEE的子集,则称G1G^1G1是GGG的子图。 -
生成子图
如果满足V(G1)=V(G)V(G^1)=V(G)V(G1)=V(G)的子图G1G^1G1,则为G的生成子图。
基本概念
-
连通
顶点VVV到顶点V1V^1V1有路径。 -
连通图
图中任意两个顶点都是连通的。- 如果一个图有n个顶点,并且有小于n-1条边,则此图必是非连通图。
-
连通分量
无向图中的极大连通子图。- 子图
- 连通
- 极大
顶点足够多
极大连通子图包含这些依附这些顶点的所有边。
找连通分量的方法
从选取一个顶点开始,以这个顶点作为一个子图,然后逐个添加与这个子图相连的顶点和边,直到所有相连的顶点都加入该子图中。 -
强连通
顶点v到顶点w和顶点w到顶点v都有路径 -
强连通图
图中任一对顶点都是强连通的。 -
强连通分量
有向图中的极大强连通子图- 子图
- 强连通
- 极大
- 顶点足够多
- 极大强连通子图中包含依附这些顶点的所有边。
-
连通图的生成树
包含图中全部n个顶点,但是只有n-1条边的极小连通子图。
生成树去掉一条边则变成非连通图,加上一条边就会形成回路。 -
非连通图的生成森林
每个连通分量的生成树构成生成森林。 -
度
以该顶点为一个端点的边的数目。- 无向图中顶点v的度是指依附于该顶点的边的条数,记为TD(v)
- 有向图中顶点v的度分为出度和入度。
- 入度(ID)是以顶点v为终点的有向边的数目。
- 出度(OD)是以顶点v为起点的有向边的数目。
无向图∑i=1nTD(vi)=2e(边数的两倍) 无向图 \sum_{i=1}^nTD(v_i) = 2e (边数的两倍) 无向图i=1∑nTD(vi)=2e(边数的两倍)
有向图∑i=1nID(vi)=∑i=1nOD(vi)=e有向图 \sum_{i=1}^nID(v_i)=\sum_{i=1}^nOD(v_i) = e有向图i=1∑nID(vi)=i=1∑nOD(vi)=e
-
有向树
有一个顶点的入度为0,其余顶点的入度均为1的有向图。 -
权和网
图中每条边可以赋予一定的意义的数值,这个数值叫做这条边的权,有权值的图称为带权图,也叫做网。 -
路径和路径长度
顶点p到q之间的路径是指顶点序列p,a,b,c,d…q,路径上边的数目就是路径长度。 -
回路(环)
第一个和最后一个顶点相同的路径称为回路或者环。 -
简单路径和简单回路
顶点不重复出现的路径称为简单路径
对于回路,除了第一个和最后一个顶点其余顶点不重复出现的回路称为简单回路。 -
距离
从顶点u到v的最短路径长度,不存在路径则无穷。