spfa模板 hdu2544
来源:互联网 发布:sql更新字段部分值 编辑:程序博客网 时间:2024/06/06 20:21
//hdu2544#include<iostream>#include<algorithm>#include<queue>#include<cstring>#include<string.h>#define INF 0x3f3f3f3fusing namespace std;const int maxn = 100010;struct edge {int to, w, next;}e[maxn];int head[maxn], dist[maxn], visited[maxn];int n, m, T, st, en;queue<int>q;void add_edge(int u, int v, int w){e[T].to = v;e[T].w = w;e[T].next = head[u];head[u] = T++;return;}void spfa(int st){for (int i = 1; i <= n; i++) {dist[i] = (i == st) ? 0 : INF;}memset(visited, 0, sizeof(visited));q.push(st);while (!q.empty()){int u = q.front(); q.pop();visited[u] = 0;for (int i = head[u]; i != -1; i = e[i].next) {int v = e[i].to;if (dist[v] > dist[u] + e[i].w) {dist[v] = dist[u] + e[i].w;if (!visited[v]) {q.push(v);visited[v] = 1;}}}visited[u] = 0;}}int main(){while (cin >> n >> m && (n || m)) {memset(head, -1, sizeof(head));int u, v, w;T = 0;for (int i = 0; i < m; i++) {cin >> u >> v >> w;add_edge(u, v, w);add_edge(v, u, w);}spfa(1);cout << dist[n] << endl;}return 0;}
阅读全文
0 0
- hdu2544及spfa模板
- spfa模板 hdu2544
- hdu2544(最短路SPFA模板)
- 最短路 hdu2544 (spfa)(模板)
- HDU2544 spfa
- HDU2544 spfa
- spfa hdu2544 蓝桥
- Floyd,Dijkstra,SPFA模板整理(以[HDU2544-最短路]为例 )
- hdu2544 最短路(SPFA算法)
- HDU2544:最短路【Dijkstra & SPFA】
- HDU2544:最短路(Dijkstra,SPFA)
- SPFA入门题-----hdu2544最短路
- 第一道SPFA HDU2544 最短路
- HDU2544---最短路(dijkstra&&floyd&&spfa)
- hdu2544最短路——spfa
- hdu2544 最短路 模板题
- HDU2544最短路模板题
- hdu2544 最短路标准模板
- 使用 smem 可视化显示Linux内存使用情况
- js Date toTimeString toLocalTimeString的区别
- canScrollVertically的canScrollVertically方法测试
- Python性能分析器Profile
- HQL补充
- spfa模板 hdu2544
- 74161设计二十进制计数器
- 度量学习(metric learning)
- 代码重构----使用java有限状态机来消除太多的if else判断
- 内部网络关于IaaS 建设的说明
- 手把手教你用git,非常详细,轻易上手
- 7、vue2.0用Vue.extend构建消息提示组件的方法实例实现alert模态框组件(2)
- 选择排序
- LCA模板 Tarjan