【图】存储结构——邻接矩阵,邻接表,十字链表,多重邻接表

图的存储结构

一般的数据结构都可以用顺序存储和链式存储

图使用顺序存储
因为任意两点之间可能存在联系,所有无法使用以数据元素在存储区中物理位置表示关系,所以不可取
图使用链式存储
需要指针域去指向邻接点,每个结点的度各不相同,若是按照做大的,则存储空间浪费,若是按照每个人自己的设计又会给操作带来不变

因此,应该根据具体的图和需要进行操作,设计恰当的结点结构和表结构


一丶邻接矩阵

【图】存储结构——邻接矩阵,邻接表,十字链表,多重邻接表

【图】存储结构——邻接矩阵,邻接表,十字链表,多重邻接表

二丶邻接表

每个顶点建立一个单链表,第 i 个单链表中的结点都依附于顶点vi的边

【图】存储结构——邻接矩阵,邻接表,十字链表,多重邻接表

头结点
firstarc:指向链表的第一个结点
info:顶点的信息
弧结点
adjvex:表示该邻接点在图中的位置
nextarc:指向顶点vi的下一条弧
info:存储弧的信息 如权值

【图】存储结构——邻接矩阵,邻接表,十字链表,多重邻接表


三丶十字链表

四丶多重邻接表

更新