图的逻辑结构:多对多
图没有顺序存储结构,但可以借助二维数组来表示元素间的关系
数组表示法(邻接矩阵)
链式存储结构:多重链表:
数组(邻接矩阵)表示法
建立一个顶点表(记录各个顶点信息)和一个邻接矩阵(表示各个顶点之间的关系)
设图A=(V,E)有n个顶点,则

图的邻接矩阵是一个二维数组A.arcs[n][n],定义为:


分析1:无向图的邻接矩阵是对称的
分析2:顶点i的度为邻接矩阵中第i行(列)中1元素的个数
特别:完全图的邻接矩阵中,对角元素为0,其余为1
有向图的邻接矩阵表示法

注:在有向图的邻接矩阵中,
第i行含义:以结点$v_i$为尾的弧(即出度边);
第i列含义:以结点$v_i$为头的弧(即入度边)。
分析1:有向图的邻接矩阵可能是不对称的。
分析2:
顶点的出度=第i行元素之和
顶点的入度=第i列元素之和
顶点的度=第i行元素之和+第i列元素之和