链式前向星备忘

Posted santiego

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了链式前向星备忘相关的知识,希望对你有一定的参考价值。

链式前向星备忘

自以为比较好理解的一种写法

初始化

struct edge{
    int v,w,nxt; //e[x].nxt 连接着节点x的下一条边编号
} e[MAXN];
int head[MAXN],ecnt=0; //head[x] 节点x最后连上的边编号

建边

inline void add_edge(int u, int v, int w){
    e[++ecnt].v=v;
    e[ecnt].w=w;
    e[ecnt].nxt=head[u];
    head[u]=ecnt; //head[x] 更新节点x最后连上的边编号
}

遍历节点(x?)连的边

for(int i=head[x];i!=0;i=e[i].nxt) //当head[x]=0时已经遍历完所有边了

参考

链式前向星基本原理

以上是关于链式前向星备忘的主要内容,如果未能解决你的问题,请参考以下文章

链式前向星

前向星和链式前向星

前向星链式前向星实现以及它的遍历

链式前向星

图的存储:链式前向星(边集数组)

链式前向星