[关闭]
@Acqua 2019-01-24T12:52:25.000000Z 字数 311 阅读 887

【模板】SPFA(Jan. 24th, 2019)

算法

  1. void spfa(int s){
  2. queue <int> q;
  3. memset(dis,127,sizeof(dis));
  4. memset(vis,0,sizeof(vis));
  5. dis[s]=0;vis[s]=1;q.push(s);
  6. while(!q.empty()){
  7. int u=q.front();q.pop();vis[u]=0;
  8. for(int i=head[u];i!=-1;i=e[i].next){
  9. int v=e[i].v,w=e[i].w;
  10. if(dis[v]>dis[u]+w){
  11. dis[v]=dis[u]+w;
  12. if(!vis[v]) vis[v]=1,q.push(v);
  13. }
  14. }
  15. }
  16. }
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注