【09-06】数据结构学习笔记-图篇00
图的存储结构
- 邻接矩阵(数组表达)
- 邻接表(链表结构,表达有向图)
- 十字链表(链表结构,表达有向图)
- 邻接多重表(表达无向图)
图的结构
边|弧
- 弧尾
- 弧头
- 权重
邻接矩阵(二维数组可以表达)
- 顶点索引
- 顶点数据
struct Node{
顶点索引;
顶点数据;
}
struct Map{
顶点数据;
邻接矩阵;
}
邻接表(链式存储,记录出弧链表)
- 顶点表示
- 顶点索引
- 出弧链表头指针
- 顶点数据
- 弧的表示方法
- 弧头顶点索引
- 下一条弧指针
- 弧数据
struct Node{
顶点索引;
该节点弧链表的头节点;
顶点数据;
}
struct Arc{
指向的顶点索引;
指向下一条弧的指针;
弧信息;
}
struct Map{
顶点数组;
}
逆邻接表(记录入弧链表)
- 顶点表示
- 顶点索引
- 入弧链表头指针
- 顶点数据
- 弧的表示方法
- 弧尾顶点索引
- 下一条弧指针
- 弧数据
十字链表
- 顶点表示
- 顶点索引
- 顶点数据
- 以该丁顶点为弧尾的弧节点指针
- 以该节点为弧头的弧节点指针
- 弧的表示
- 弧尾顶点索引
- 弧头顶点索引
- 弧尾相同的下一条弧的指针
- 弧头相同的下一条弧的指针
- 弧的数据