码迷,mamicode.com
首页 > 其他好文 > 详细

邻接表代码

时间:2015-08-30 22:58:28      阅读:172      评论:0      收藏:0      [点我收藏+]

标签:

#include<stdio.h>
#include<string.h>
#include<math.h>
#define N 110

using namespace std;

int head[N], cnt;

void Init()
{
    memset(head, -1, sizeof(head));
    cnt = 0;//表示边数
}

struct Edge
{
    int u, v, flow, next;
}edge[N * N];

void Add(int u, int v, int flow)
{
    edge[cnt].u = u;
    edge[cnt].v = v;
    edge[cnt].flow = flow;
    edge[cnt].next = head[u];//edge[cnt].next表示第cnt条边中的u上一次出现的位置(即上一次出现在第几条边)
    head[u] = cnt++;//head[u]表示u现在所在的位置(即u在第几条边)
}

int main()
{
    int u, v, flow, m;
    while(~scanf("%d", &m))
    {
        while(m--)
        {
            scanf("%d%d%%d", &u, &v, &flow);
            Add(u, v, flow);
        }
    }
    return 0;
}

 

邻接表代码

标签:

原文地址:http://www.cnblogs.com/qq2424260747/p/4771713.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!