初始化
int tot=0,head[1111111];
struct eatint{
int wi,to,ne;
}e[1111111];
int main()
{
memset(e,-1,sizeof e);
memset(head,-1,sizeof head);
}
输入
void add(int x,int y,int z)
{
e[tot].wi=z;
e[tot].to=y;
e[tot].ne=head[x];
head[x]=tot++;
}
int main()
{
int n,m,i,j;
for(i=1;i<=n;i++)
{
int x,y,z;
scanf("%d%d%d",&x,&y,&z);
add(x,y,z);
add(y,x,z);
}
}
枚举
int main()
{
...st;//当前节点
for(int i=head[st];i!=-1;i=e[i].ne)
{
...
}
}