1. /*
  2. SPFA模板
  3. */
  4. const int inf=0x3f3f3f3f;
  5. inline int SPFA(int s){
  6. memset(dis,inf,sizeof(dis));
  7. queue<int > q;
  8. dis[s]=;
  9. q.push(s);
  10. vis[s]=;
  11. while(!q.empty()){
  12. int u=q.front;
  13. q.pop();
  14. vis[u]=;
  15. for(int i=head[u];i;i=edge[i].next ){
  16. int v=edge[i].to ;
  17. if(dis[v]>dis[u]+edge[i].value ){
  18. dis[v]=dis[u]+edge[i].value ;
  19. if(!vis[v]){
  20. vis[v]=;
  21. q.push(v);
  22. }
  23. cntt[v]++;
  24. if(cntt[v]>=n) return ;
  25. }
  26. }
  27. }
  28. return ;
  29. }
  1. /*
  2. dijstra模板 (堆优化)
  3. */
  4. const int inf=0x3f3f3f3f;
  5. typedef pair<int ,int > p
  6. inline void dijstra(int s){
  7. memset(dis,inf,sizeof(dis))
  8. priority_queue<p,vector<p>,greater<p> > q;
  9. dis[s]=;
  10. q.push(make_pair(,s));//pair类型默认先比较第一项
  11. while(!q.empty()){
  12. int u=q.top().second;
  13. int w=q.top().first;
  14. q.pop();
  15. if(dis[u]!=w) continue;
  16. for(int i=head[u];i;i=edge[i].next ){
  17. int v=edge[i].to ;
  18. if(dis[v]>dis[u]+edge[i].value ){
  19. dis[v]=dis[u]+edge[i].value ;
  20. q.push(make_pair(dis[v],v));
  21. }
  22. }
  23. }
  24. }
  1. /*
  2. floyd模板
  3. */
  4. inline void floyd(){
  5. for(int k=;k<=n;k++)
  6. for(int i=;i<=n;i++)
  7. for(int j=;j<=n;j++){
  8. dis[i][j]=min(dis[i][k]+dis[k][j],dis[i][j]);
  9. //或者:
  10. if(dis[i][j]>dis[i][k]+dis[k][j])
  11. dis[i][j]=dis[i][k]+dis[k][j];
  12. }
  13. }

floyed dij spfa 模板的更多相关文章

  1. SPFA模板 Bellmanford优化版

    SPFA模板: queue<int>Q; ]; ],sumv[]; *],__next[*],e,w[*],first[],cnts[]; void AddEdge(int U,int V ...

  2. HDu 2544 最短路【dijkstra &amp; floyed &amp; SPFA 】

    最短路 Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submis ...

  3. spfa模板

    通过stl的queue实现的spfa(vector实现邻接表存图) 本模板没有考虑存在两点不连通的情况 如果需要判断则需要用到并查集或者遍历整个邻接表 #include<iostream> ...

  4. spfa(模板)

    spfa作为图论中的常用算法,深受各类出题人和各位OIer的喜爱: so,为了给大众创造福利,宝宝在此奉上spfa大发的思路和模板:以感谢社会, 感谢CCF,感谢CCTV, 感谢我的老师,感谢同学们, ...

  5. 最短路算法 -- SPFA模板

    一.算法步骤 建立一个队列,初始时队列里只有起始点,再建立一个数组记录起始点到所有点的最短路径(该数组的初始值要赋为极大值,该点到它本身的路径赋为0,下面的模板中该数组为dist[]).然后执行松弛操 ...

  6. hdu-2544-最短路(SPFA模板)

    题目链接 题意很清晰,入门级题目,适合各种模板,可用dijkstra, floyd, Bellman-ford, spfa Dijkstra链接 Floyd链接 Bellman-Ford链接 SPFA ...

  7. spfa模板+讲解

    zz http://blog.sina.com.cn/s/blog_6ad20aef0100mc1a.html Spfa算法 (模板源代码) 这是Bellman Ford的改进算法.    算法介绍: ...

  8. 图论--最短路--SPFA模板(能过题,真没错的模板)

    [ACM常用模板合集] #include<iostream> #include<queue> #include<algorithm> #include<set ...

  9. UVA 558 判定负环,spfa模板题

    1.UVA 558 Wormholes 2.总结:第一个spfa,好气的是用next[]数组判定Compilation error,改成nexte[]就过了..难道next还是特殊词吗 题意:科学家, ...

随机推荐

  1. 性能测试工具LoadRunner27-LR之读取Excel数据

    为何要读取Excel数据? 很多用户喜欢用Excel来统计数据,比如学生成绩表.个人信息等.有时需要把Excel中的数据来进行参数化,数据量比较多时,一个个在LR里输入是不现实的,因此需要用LR来导入 ...

  2. day03 - Python基础3

    本节内容 1. 函数基本语法及特性 2. 参数与局部变量 3. 返回值 嵌套函数 4.递归 5.匿名函数 6.函数式编程介绍 7.高阶函数 8.内置函数  温故知新                   ...

  3. 支付宝php支付接口说明

    直接把该代码放到PHP服务器下,直接访问index.php.1.文件列表: alipay_config.php    (基本参数配置页面,填写商家的支付宝安全校验码,合作id,支付宝帐号等内容)ind ...

  4. jQuery.hover() 函数详解

    hover()函数用于为每个匹配元素的hover事件绑定处理函数. hover事件就是鼠标悬停事件.此外,你还可以额外传递给事件处理函数一些数据. 此外,你可以为同一元素多次调用该函数,从而绑定多个事 ...

  5. React.js 小书 Lesson2 - 前端组件化(一):从一个简单的例子讲起

    作者:胡子大哈 原文链接:http://huziketang.com/books/react/lesson2 转载请注明出处,保留原文链接和作者信息. 很多课程一上来就给大家如何配置环境.怎么写 Re ...

  6. ip地址在通信中的变化(就简单的讲一下, 给自己mark)

    节点之间的通信 数据报文的封装(自上而下) http tcp ip mac(讯框) 数据报文的源ip和目标ip是不变的(在内网中, 如果考虑到连接到外部网路的时候, 如果有路由器(里面有嵌入式的Lin ...

  7. [精校版]The Swift Programming Language--语言指南--字符串和字符 (转)

    今天装了10.10.马上就可以实际编写swift了.还是很兴奋啊. 哈哈.字符串和字符是大家最容易打交道的.今天就转一下讲解swift中字符串和字符的文章.希望对大家有帮助. 原文地址:http:// ...

  8. JavaScript常用字符串操作方法

    1.concat() concat() 方法用于连接两个或多个字符串,并返回连接后的字符串.stringObject.concat() 与 Array.concat() 很相似. var str1=& ...

  9. The tenth day

    Why the long face? 你为什么不高兴,你为什么扳着脸,愁眉苦脸. Why the long face? Are you feeling down again? 你脸怎么这么臭,你又心情 ...

  10. 夜色的 cocos2d-x 开发笔记 04

    本章会把游戏的基本功能结束,前面实现了子弹发射,产生敌人. 接下来我们要,检测子弹与敌人碰撞,让玩家移动,实现这个游戏的基本功能. 于是多出了这几个方法,当然还是写在.h文件里 首先实现触摸监听的方法 ...