图的概念
线性表(链表)局限于一个直接前驱和一个直接后继的关系
树也只能有一个直接前驱也就是父节点
当我们需要表示多对多的关系时,就用到了图。

图是一种数据结构,其中可以具有以下零个或多个相邻元素。两个节点之间的链接称为边。节点也可以称为顶点
无向图


图的表示方式
图的表示方式有两种:二维数组表示(邻接矩阵);链表表示(邻接表)
邻接矩阵
邻接矩阵是表示图形中顶点之间相邻关系的矩阵,对于n个顶点的图而言,矩阵row和col表示的是1...n个点

邻接表
1.邻接矩阵需要为每个顶点都分配n个边的空间,其实有很多都是不会存在,会造成空间一定损失
2.邻接表的实现只是关心存在的边,不会关心不存在的边。因此没空间浪费,邻接表由数组+链表组成


浙公网安备 33010602011771号