数学定义
G=(V,E)
其中,V是顶点集合,E是边的集合。以下图为例:
令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
相邻
如果两个顶点之间有边相连,则称这两个顶点相连。
如图G1,1和2相邻。
关联
边与它的一端的顶点关联。
如图G1,d和1关联。
有向边
有向图的边叫有向边,也叫弧。弧(u,v)表示从u出发指向v方向的有向边,所以,(u,v)和(v,u)表示不同的弧。
无向图通常用G表示,而有向图通常用D表示。所以修正数学定义:
无向图数学表示为 G=(V,E)
有向图数学表示为 D=(V,A),D是directed graph,A是arc。
计算机程序中的图表示
邻接矩阵
邻接矩阵是通过顶点与顶点的关系表示矩阵,一个图G中有n个顶点,则邻接矩阵是n×n矩阵。
对于加权图,不用1表示相邻,而是将边的权值放在矩阵的对应位置上。
关联矩阵
关联矩阵是通过顶点与边的关系表示矩阵,一个图G中有n个顶点,m条边,则关联矩阵是n×m矩阵。
邻接表
领接表是一种链表,它以图的顶点为起点,将与该顶点关联的边以任意顺序连接起来。