7.2图的存储结构(邻接表)
2017-02-23 10:27
225 查看
为什么要采用邻接表:
对于边数相对顶点较少的图,这种结构无疑是存储空间的极大浪费。
所以把数组和链表结合起来存储,这种方式在图结构中适用,称为邻接表(AdjacencyList)
邻接表的处理方法如下:
-顶点用一个一位数组存储(也可以用单链表存储),但数组可以比较容易的读取。
-每个顶点Vi的所有邻接点构成一个线性表,由于邻接点的个数不确定,所以要选择单链表存储。
邻接表(无向图)
邻接表(有向图)
有向图有两种:
1.把顶点当弧尾建立的邻接表,这样就很容易得到每个顶点的出度,如下图所示:
如果要确定顶点入度,可以建立逆邻接表:
如下图所示:
对于带权值的网图,可以在边表结点定义中再增加一个数据域来存储权值
如下图所示:
对于边数相对顶点较少的图,这种结构无疑是存储空间的极大浪费。
所以把数组和链表结合起来存储,这种方式在图结构中适用,称为邻接表(AdjacencyList)
邻接表的处理方法如下:
-顶点用一个一位数组存储(也可以用单链表存储),但数组可以比较容易的读取。
-每个顶点Vi的所有邻接点构成一个线性表,由于邻接点的个数不确定,所以要选择单链表存储。
邻接表(无向图)
邻接表(有向图)
有向图有两种:
1.把顶点当弧尾建立的邻接表,这样就很容易得到每个顶点的出度,如下图所示:
如果要确定顶点入度,可以建立逆邻接表:
如下图所示:
对于带权值的网图,可以在边表结点定义中再增加一个数据域来存储权值
如下图所示:
相关文章推荐
- 图的深度优先和广度优先遍历算法(用邻接表作为存储结构)
- 图的常用存储结构----邻接表
- 【数据结构】图的存储方式:邻接矩阵和邻接表
- 图的邻接表存储结构及求各顶点的度
- 数据结构_图_邻接表做存储结构实现求无向图的连通分量_C++实现
- 图的存储结构 --- 邻接表
- 邻接表 图的存储结构
- 图的存储结构-邻接表
- 建立图的存储结构 :邻接表 和 邻接矩阵
- 数据结构之---C语言实现图的邻接表存储表示
- 【数据结构】图的存储方式:邻接矩阵和邻接表
- 图的邻接表存储结构的定义及其遍历
- 图的存储结构-邻接矩阵和邻接表
- 图的存储结构——邻接表
- 图的存储结构-邻接表-边集数组-前向星
- 刚刚写了个邻接表存储结构
- 【数据结构】图的存储方式:邻接矩阵和邻接表
- 数据结构之自建算法库——图及其存储结构(邻接矩阵、邻接表)
- 数据结构之(图存储结构之)邻接表
- 图及其存储结构(邻接矩阵、邻接表)