日拱一卒学图论02-图的表示

150 阅读2分钟

数学定义

G=(V,E) 其中,V是顶点集合,E是边的集合。以下图为例:

image.png

V1={1,2,3,4}E1={a,b,c,d,e,f},则图G1=(V1,E1)

边的表示

因为边一般(不一般的就是自环边)代表了两个顶点之间的关系,所以边的表示一般是这样: c=(1,3),对于无向图,因为不考虑顶点之间的顺序,所以正确的写法应该是c={1,3},大括号表示顶点的集合。但是一般仍然习惯写成c=(1,3)

顶点的数量

通常用n表示图的顶点数 如图G1,有n=|V|,n=4

边的数量

通常用m表示图的边数 如图G1,有m=|E|,m=6

相邻

如果两个顶点之间有边相连,则称这两个顶点相连。 如图G112相邻。

关联

边与它的一端的顶点关联。 如图G1d1关联。

有向边

有向图的边叫有向边,也叫弧。弧(u,v)表示从u出发指向v方向的有向边,所以,(u,v)(v,u)表示不同的弧。

无向图通常用G表示,而有向图通常用D表示。所以修正数学定义:

无向图数学表示为 G=(V,E)

有向图数学表示为 D=(V,A)D是directed graph,A是arc。

计算机程序中的图表示

邻接矩阵

image.png

邻接矩阵是通过顶点与顶点的关系表示矩阵,一个图G中有n个顶点,则邻接矩阵是n×n矩阵。

对于加权图,不用1表示相邻,而是将边的权值放在矩阵的对应位置上。

关联矩阵

关联矩阵是通过顶点与边的关系表示矩阵,一个图G中有n个顶点,m条边,则关联矩阵是n×m矩阵。

image.png

邻接表

领接表是一种链表,它以图的顶点为起点,将与该顶点关联的边以任意顺序连接起来。

1:a>c>d1:a->c->d

2:a>b>e2:a->b->e

3:b>c>f3:b->c->f

4:d>e>f4:d->e->f