dijstra 模板
来源:互联网 发布:淘宝口碑客服电话 编辑:程序博客网 时间:2024/05/15 23:54
int path[100005];int used[100005];int d[100005];vector<int> G[100005];int s,n;void dijstra(){ for(int i=0;i<n;i++) { path[i]=-1; used[i]=0; d[i]=100000000; } d[s]=0; while(1) { int v=-1; for(int u=0;u<n;u++) { if(used[u]==0 && ((v==-1)||d[u]<d[v])) { v=u; } } if(v==-1) break; used[v]=1; for(int i=0;i<G[v].size();i++) { int u=G[v][i]; if(d[v]+1<d[u]) { d[u]=d[v]+1; path[u]=v; } } }}
const int MAXN=1010;#define typec intconst typec INF=0x3f3f3f3f;//防止后面溢出,这个不能太大bool vis[MAXN];int pre[MAXN];void Dijkstra(typec cost[][MAXN],typec lowcost[],int n,int beg){ for(int i=0; i<n; i++) { lowcost[i]=INF; vis[i]=false; pre[i]=-1; } lowcost[beg]=0; for(int j=0; j<n; j++) { int k=-1; int Min=INF; for(int i=0; i<n; i++) if(!vis[i]&&lowcost[i]<Min) { Min=lowcost[i]; k=i; } if(k==-1)break; vis[k]=true; for(int i=0; i<n; i++) if(!vis[i]&&lowcost[k]+cost[k][i]<lowcost[i]) { lowcost[i]=lowcost[k]+cost[k][i]; pre[i]=k; } }}
0 0
- dijstra 模板
- Dijstra算法模板
- 最短路模板(dijstra)
- Dijstra
- dijstra
- Dijstra
- dijstra邻接表+堆优化模板
- hdu2544 最短路,dijstra(模板)
- hdoj 2544 最短路(dijstra模板)
- Dijstra算法
- Dijstra算法
- dijstra算法
- dijstra算法
- hiho dijstra
- Dijstra算法
- 图---Dijstra
- Dijstra算法
- dijstra算法
- hdu1175(DFS)
- python使用requests包爬取Pixiv图片--关注画师的所有作品
- Tribon的网络版(TriWeb)上线啦
- 测试一下
- 轻松理解CRC差错检测算法(A PAINLESS GUIDE TO CRC ERROR DETECTION ALGORITHMS)一
- dijstra 模板
- java泛型
- 51nod 1406 与查询
- Currying
- leetcode12&13
- cmake+opencv+vs2013
- 判断两条线段是否相交 计算几何
- 利用Fiddler抓取手机数据包
- 下载网站上的视频的方法