链式向前星
简单来说,就是利用邻接表存储边,一些卡vector的题可以用
1 int edge_cnt = 0 2 memset(head,-1,sizeof(head)); 3 4 struct Edge{ 5 int v; 6 int w; 7 int next; 8 }edge[N*2]; 9 10 void add(int from,int to,int weight){ 11 edge[edge_cnt].v = to; 12 edge[edge_cnt].w = weight; 13 edge[edge_cnt].next = head[from];//以from为起点的前一条边在edge[]中的编号 14 head[from] = edge_cnt++; 15 return ; 16 }