图的存储结构
来源:互联网 发布:ug编程等高开粗经验 编辑:程序博客网 时间:2024/06/10 01:57
- 图有5种不同的存储结构,下面主要讲述邻接矩阵表示和邻接表表示
1.邻接矩阵:
用两个数组来表述,一个一维数组存储所有的顶点。一个二维数组,存储顶点间的边关系。
如:顶点数组vexs[5]={v0,v1,v2,v3,v4}
边数组arc[5][5]={0 ,# ,#, #,6, //两个顶点间连成的边的权值
9, 0, 3 ,#,#,
2, #, 0, 5, #,
#, #, #, 0, 1,
#, #, #, #, 0}
图的存储结构的定义
typedef struct
{
char vexs[MAXVEX];
int arc[MAXVEX][MAXVEX];
int numVertex;
int numEdges;
}MGraph;
2.邻接链表:
将结点存入数组,并将结点的孩子进行链式存储。因此该数组是结构体数组。如
typedef struct VertexNode
{
char data;
EdgeNode *firstedge;
}VertexNode,AdjList[MAXVEX];
其中,每个孩子结点的定义为:
typedef struct EdgeNode
{
int adjvex;//邻接点域,存储该结点的对应的数组下标
struct EdgeNode *next;
}
图的结构定义为
typedef struct
{
AdjList adjlist;
int numVertex;
int numEdges;
}GraphAdjList;
出自《大话数据结构》一书。- 图的存储结构
- 图的存储结构
- 图的存储结构
- 图的存储结构
- 图的存储结构
- 图的存储结构
- 图的存储结构
- 【图的存储结构】
- 图的存储结构
- 图的存储结构
- 图的存储结构
- 图的存储结构
- 图的存储结构
- 图的存储结构
- 图的存储结构
- 图的存储结构
- 图的存储结构
- 图的存储结构
- SPFA算法
- CUDA3--矩阵乘法,利用共享存储器
- php 接口类,抽象类 的实际作用
- GitHub 教程(命令大全)不断补充完善。。。
- VC下利用多线程实现文件的快速检索
- 图的存储结构
- 第14章、布局Layouts之FrameLayout框架布局(从零开始学Android)
- 通过事件机制实现 Eclipse 插件之间的通信
- Big endian 与 Little endian
- 在世界最美的梅里雪山,心情象天一样蓝974
- 试试是什么效果
- 甘肃散记85
- 单例模式
- 第15章、布局Layouts之TableLayout表格布局(从零开始学Android)