void add(int m,int n) { sum++; E[sum].to=n; E[sum].next=head[m]; head[m]=sum; E[sum].w=1; }
时间: 2023-05-21 08:04:07 浏览: 107
这是一个向无向图中添加边的函数,其中m和n是边的两个端点,sum是边的编号,head[m]是m的第一条边的编号,E[sum].to表示边的终点,E[sum].next表示与m相邻的下一条边的编号,E[sum].w表示边的权值。
相关问题
void add(int m, int n) { sum++; //对应数目(权值) E[sum].to = n; E[sum].next = head[m]; //以m为顶点时 head[sum] = sum; E[sum].w = 1; }
这是一个向无向图中添加边的函数,其中m和n是边的两个端点,sum是边的编号,head[m]表示以m为起点的第一条边的编号,E[sum].to表示边的终点,E[sum].next表示下一条以m为起点的边的编号,E[sum].w表示边的权值。
struct node { int to; int next; int w; }E[50005]; int sum=0, head[50005], dist[50005],l1, l2; //分为k=1与k=2 void add(int m, int n) { sum++; //对应数目(权值),边的编号 E[sum].to = n; E[sum].next = head[m]; //以m为顶点时,head是每个顶点第一条边的编号 head[sum] = sum; E[sum].w = 1; }
这是一个关于图的数据结构的代码,其中包含了一个结构体 node,以及一个数组 E 和一些变量。函数 add 是用来添加边的,其中 m 和 n 分别表示边的起点和终点。在这个代码中,图被分为了两个部分,即 k=1 和 k=2。每条边都有一个权值,即 E[sum].w = 1。
阅读全文