链式前向星备忘
链式前向星备忘
自以为比较好理解的一种写法
初始化
SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。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时已经遍历完所有边了
参考

更多精彩