题目:http://acm.nefu.edu.cn/JudgeOnline/problemshow.php?problem_id=208


#include <iostream>
#include <string.h>
#include <stdio.h>
#include <queue>using namespace std;
const int N = 105;
const int INF = 1<<29;int map[N][N];
int dist[N];
bool vis[N];
queue<int> Q;int n,m;void Spfa(int s)
{memset(vis,0,sizeof(vis));for(int i=0; i<n; i++)dist[i] = INF;dist[s] = 0;while(!Q.empty()) Q.pop();Q.push(s);vis[s] = 1;while(!Q.empty()){int u = Q.front();vis[u] = 0;Q.pop();for(int i=0; i<n; i++){if(map[u][i] == INF)  continue;if(dist[i] > dist[u] + map[u][i]){dist[i] = dist[u] + map[u][i];if(!vis[i]){vis[i] = 1;Q.push(i);}}}}
}void Init()
{for(int i=0; i<n; i++)for(int j=0; j<n; j++)map[i][j] = (i == j) ? 0 : INF;
}int main()
{while(cin>>n>>m){Init();while(m--){int u,v,w;cin>>u>>v>>w;map[u][v] = w;}int s,t;cin>>s>>t;Spfa(s);if(dist[t] == INF) cout<<"-1"<<endl;else cout<<dist[t]<<endl;}return 0;
}


最短路径之Spfa算法相关推荐

  1. hdu 3790(最短路径问题 SPFA算法)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3790 最短路径问题 Time Limit: 2000/1000 MS (Java/Others)    ...

  2. 最短路径(SPFA算法)

    1200: 小明的难题 Time Limit: 1 Sec Memory Limit: 128 MB Submit: 363 Solved: 103 [Submit][Status][Web Boar ...

  3. 最短路径算法——SPFA算法

    在家的这几天效率还是蛮低的,总是有其他的事情耽搁,然后最近就在做搜索题,然后做了两个搜索关于最短路径的,点数少的时候之前学的佛洛依德还能派上点用处,可以点数过1000之后就容易超时了,然后看他们的题解 ...

  4. 图论-最短路径--3、SPFA算法O(kE)

    SPFA算法O(kE) 主要思想是:     初始时将起点加入队列.每次从队列中取出一个元素,并对所有与它相邻的点进行修改,若某个相邻的点修改成功,则将其入队.直到队列为空时算法结束.     这个算 ...

  5. (最短路径算法整理)dijkstra、floyd、bellman-ford、spfa算法

    一.floyd 1.介绍 floyd算法只有五行代码,代码简单,三个for循环就可以解决问题,所以它的时间复杂度为O(n^3),可以求多源最短路问题. 2.思想: Floyd算法的基本思想如下:从任意 ...

  6. 最短路径:Dijkstra、BellmanFord以及SPFA算法

    最短路径问题 1.Dijkstra算法 简介 (1)Dijkstra算法伪代码 (2)C++ 邻接表版代码 (3)优化 (4)题型分析 2.Bellman Ford算法 简介 (1)Bellman算法 ...

  7. 最短路径(Dijkstra、Bellman-Ford和SPFA算法)

    最短路径(Dijkstra.Bellman-Ford和SPFA算法) 前言 图的存储方式 邻接矩阵 邻接表 链表建立 利用vector 结构体 核心思路 Dijkstra算法 图解 基本思想 求解步骤 ...

  8. #1093 : 最短路径·三:SPFA算法(邻接表)

    #1093 : 最短路径·三:SPFA算法 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 万圣节的晚上,小Hi和小Ho在吃过晚饭之后,来到了一个巨大的鬼屋! 鬼屋中一共 ...

  9. 最短路径——SPFA算法(蓝桥杯试题集)

    *对于本题的floyd题解请跳转:http://blog.csdn.net/sm9sun/article/details/53285870 题目链接: http://lx.lanqiao.cn/pro ...

最新文章

  1. 北大网络教育计算机作业,北大网络教育(计算机专业)网络基础作业答案.doc
  2. C中的野指针—如何避免
  3. 一个对象,数组去重的方法
  4. OpenSsl工具的介绍
  5. FortiGate双链路不同运营商上网配置
  6. 搭建kafaka集群
  7. 转载:Visio2013的密钥
  8. 短信API接口demo示例-C#/Message/Send
  9. 做机器学习算法工程师是什么样的工作体验?
  10. 父子id mysql,一道关于数据库(经典父子级 ID 关联)更新题
  11. 6-1 哈夫曼树及哈夫曼编码分数
  12. b站视频素材哪里找?怎么找b站素材?
  13. B端产品-定义、分类、竞品分析、与C端产品的区别
  14. Android WebView 不能弹出alert的对话框
  15. 计算机发布信息的方法,介绍两种用电脑给手机发短信的方法
  16. 六、hibernate表与表之间的关系(多对多关系)
  17. 美国国家标准与技术研究院(NIST)
  18. 日常微博营销技巧究竟有哪些呢?
  19. 经典基础算法的一些精髓和注意点总结
  20. 【Python CUDA版】河北工业大学计算机图像处理实验二:图像直方图及灰度变换

热门文章

  1. 自定义线程池-线程池类和测试类编写
  2. flume高可用-balance-配置文件编写
  3. InputStreamReader介绍代码实现
  4. 字符输出流写数据的其他方法
  5. 设计模式之_工厂系列_03
  6. triggered_time
  7. java 持久化线程_java – Spring Hibernate Envers多线程 – 会话关...
  8. 我什么计算机作文600字,我家的电脑作文600字
  9. 在 Java 中,如何批量读取本项目资源目录下的所有文件
  10. 【网络与系统安全】关于SSL/TSL协议的分析