int cnt,last[maxn];//cnt:当前最后一条边的编号 last[u]:以u为起点,按照时间顺序所插入的最后一条边的编号
struct edge{//边表
int v,next,w;//v:权值 to:连向的边 next:同起点上一条边的编号
}e[maxn];
void insert(int u,int v,int w){//插入起点为u,终点为v,权值为w的边
cnt++;
e[cnt].u=v;
e[cnt].w=w;
e[cnt].next=last[u];
last[u]=cnt;
}
for(int i=last[u];i;i=e[i].next)//遍历起点为u的出边
{
//do something
}
邻接表模板
最新推荐文章于 2022-07-05 15:38:56 发布