关于图的邻接表定义的解释

本文详细介绍了图论中邻接表和邻接矩阵的定义及应用,通过具体实例帮助读者理解如何使用这两种数据结构来表示和操作图。邻接表通过链表结构存储图的边,而邻接矩阵则使用二维数组来表示图的边。两者各有优缺点,在实际应用中选择合适的结构取决于具体需求。

通常书中的邻接表定义为:

typedef struct ArcNode{

int adjvex;                                                  //与顶点连接的节点的编号;

struct ArcNode *nextarc;    //与顶点连接的下一个节点的指针;

int info;    //节点的其他信息,如权重;

}ArcNode;

typedef struct VNode{

char data; //顶点的定义;

ArcNode  *firstarc; //顶点的指针;

}VNode;

typedef struct{

VNode adjlist[maxSize]; //顶点数组;

int n,e; //整个图的节点总数和边数;

}AGraph;


结合书中邻接表的图来理解。

邻接矩阵的话,直接用二维数组就可以搞定了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值