邻接表代码
2015-08-30 21:33
381 查看
#include<stdio.h> #include<string.h> #include<math.h> #define N 110 using namespace std; int head , 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; }
相关文章推荐
- Effective C++ 条款25 考虑写出一个不抛出异常的swap函数
- 简单的C语言语法-scanf
- 3-1、topk代码
- java中static变量和方法的总结
- Java基础语法(上)
- Java 时间(日期)相加处理
- 基于C#的百度图片批量下载工具
- vs2008代码自动调整格式快捷方式
- Java中有关Null的9件事
- Spring与Struts区别联系
- Java栈的实例-数组和链表两种方法
- C++虚函数和纯虚函数
- jdk 配置中,环境变量各个参数的要求的说明
- Spring MVC 4.1+Mybatis ajax 异步返回Json 415问题解决方案
- java中的j++/j--
- JAVA.C#堆和栈的区别
- The Django Book 2.0--中文版
- 简单介绍java Enumeration
- [笔记][Java7并发编程实战手册]4.5-4.6 运行多个任务并处理第一个结果/所有结果ThreadPoolExecutor
- UDP服务器/客户端代码示例