数据结构之图形结构

185 阅读1分钟

概念:

图形结构是一种比树形结构更复杂的非线性结构。在树形结构中,结点间具有分支层次关系,每一层上的结点只能和上一层中的至多一个结点相关,但可能和下一层的多个结点相关。而在图形结构中,任意两个结点之间都可能相关,即结点之间的邻接关系可以是任意的

1. 有向图

一个有向图D是指一个有序三元组(V(D),A(D),ψD),其中ψD)为关联函数,它使A(D)中的每一个元素(称为有向边或弧)对应于V(D)中的一个有序元素(称为顶点或点)对.

2. 无向图

边没有方向的图称为无向图。

3. 邻接矩阵

无向图:

image.png

按照节点数 4 * 4 的二维矩阵 排列如下

         A     B     C     D

     A   0     1     0     1

     B   1     0     1     1

     C   0     1     0     1

     D   1     1     1     0

有向图:

image.png

按照节点数 4 * 4 的二维矩阵 排列如下

         A     B     C     D

     A   0     1     0     1

     B   0     0     1     0

     C   0     0     0     1

     D   0     0     0     0

有向图 行的和为入度 列的和为出度

4. 邻接表

邻接表,存储方法跟树的孩子链表示法相类似,是一种顺序分配和链式分配相结合的存储结构 如这个表头结点所对应的顶点存在相邻顶点,则把相邻顶点依次存放于表头结点所指向的单向链表中。

      有向图

image.png

结果如下:

image.png