void add(int u,int v,int w)
2 {
3 edge[cnt].c= w;
4 edge[cnt].to = v;
5 edge[cnt].next = head[u];
6 head[u] = cnt++;
7 }
第一个出场的是edge.c——权重
好的,我们看到紧随其后的是edge.to——这条边的终点/*前两个还是很好理解的
然后就是最最大佬的部分,edge.next——它指向同一起点的上一条边
我们使用链式前向星时常常会看到这么一条语句for(i=head[u];i;i=e[i].next)//插个介绍,head[u]代表以u为起点的边上一次出现的边的编号
我们可以使用它进行一个bfs
举个栗子
转载自点击打开链接