链式前向星

链式前向星是邻接表存储结构的一种变体结构,静态链表模拟链表,插入边模拟链表的头插

结构

边集数组

  • 若是无向图,E数组的大小要开边的个数的两倍
struct edge{
	int to;    //出度边终点
	int weight;    //权值
	int next;    //和该边同起点的另一个边的下标指针
}E[MaxE];

int cnt;    //记录边集数组中边的个数

头节点数组

head[i]存以i为出度边起点的第一个出度边在边集数组edge中的下标,初始化为-1(非法下标)
一定要记住初始化

int head[MaxV];

插边

void add(int s,int e,int w){
	E[cnt].to=e;
	E[cnt].weight=weight;
	//模拟头插
	E[cnt].next=head[s];
	head[s]=cnt;
	cnt++;
}
posted @ 2026-04-04 09:37  mofei1116  阅读(19)  评论(0)    收藏  举报