| ||||||||||
| Online Judge | Problem Set | Authors | Online Contests | User | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest | |||||||||
顺便给个临接链的数组实现模板,有向图用的In Reply To:各位大牛,0ms怎么搞的,我怎么老在16ms打转哪。 Posted by:0810311106 at 2010-08-21 19:55:16 const int maxpoint = 505;
const int maxroads = 10005;
#define MAXN maxpoint
#define MAXM maxroads
//图的定义:临接链表的数组实现
int aterm[MAXN];
int bterm[MAXM],Next[MAXM];
int N,M,roads;
void init() {
roads = 0;
for (int i = 1; i <= N; ++i) aterm[i] = 0;
}
void Insertroad(int a,int b) {
Next[++roads] = aterm[a];
bterm[roads] = b;
aterm[a] = roads;
}
遍历由a可直接到达的点的方法:
for (int p = aterm[a]; p; p = Next[p]) {do something with bterm[p];}
Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator