zoukankan      html  css  js  c++  java
  • spfa与dijkstra(最短路)

    spfa:

    void spfa(){
        queue<int> que;
        while(!que.empty()){que.pop();}
        que.push(s);
        vis[s]=1;
        while(!que.empty()){
            int k=que.front();
            que.pop();
            vis[k]=0;
            int tt=head[k];
            while(tt!=-1){
                if(dis[g[tt].to]>dis[k]+g[tt].val){
                    dis[g[tt].to]=dis[k]+g[tt].val;
                    if(!vis[g[tt].to]){
                        que.push(g[tt].to);
                        vis[g[tt].to]=1;
                    }
                }
                tt=g[tt].nxt;
            }
        }
    }

    dijkstra:

    void Dij(){
        priority_queue<pair<int,int>,vector<pair<int,int> >,greater<pair<int,int> > > que;
        while(!que.empty()){que.pop();}
        que.push({0,s});
        while(!que.empty()){
            pair<int,int> now=que.top();
            int k=now.se;
            que.pop();
            if(vis[k]) continue;
            vis[k]=1;
            int tt=head[k];
            while(tt!=-1){
                if(dis[g[tt].to]>dis[k]+g[tt].val){
                    dis[g[tt].to]=dis[k]+g[tt].val;
                    if(!vis[g[tt].to]){
                        que.push({dis[g[tt].to],g[tt].to});
                    }
                }
                tt=g[tt].nxt;
            }
        }
    }
  • 相关阅读:
    萨卡斯指法
    香港保险
    数据分析,了解行业
    数据分析师
    黑盒测试方法
    web系统的常用功能测试
    linux-磁盘问题
    mysql连表查询
    mysql模糊查询
    MySQL 数据类型
  • 原文地址:https://www.cnblogs.com/Profish/p/9734180.html
Copyright © 2011-2022 走看看