图的邻接矩阵的存储方式是用两个数组来实现的,一个一维数组存储顶点信息,一个二维数组存储线(无向图)或弧(有向图)的信息。
设图G有n个顶点,则邻接矩阵是一个n × n的方阵,定义为:
无向图的邻接矩阵,两个顶点有边则为1,否则,为0;因为是无向图arc[i][j] = arc[j][i],所以矩阵为对称矩阵,对角线为自己到自己的边,邻接矩阵中,行之和或者列之和都为各顶点度的总数。
设图G有是网图,有n个顶点,则邻接矩阵是一个n × n的方阵,定义为:
无向网图和无向图差不多,就是加了权值,两个顶点之间无边的话距离是∞。
如果是有向图,邻接矩阵就不是对称矩阵了。
下面是邻接矩阵的存储结构: